0001437749-24-015682.txt : 20240509 0001437749-24-015682.hdr.sgml : 20240509 20240509161602 ACCESSION NUMBER: 0001437749-24-015682 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 89 CONFORMED PERIOD OF REPORT: 20240331 FILED AS OF DATE: 20240509 DATE AS OF CHANGE: 20240509 FILER: COMPANY DATA: COMPANY CONFORMED NAME: INTEST CORP CENTRAL INDEX KEY: 0001036262 STANDARD INDUSTRIAL CLASSIFICATION: INSTRUMENTS FOR MEAS & TESTING OF ELECTRICITY & ELEC SIGNALS [3825] ORGANIZATION NAME: 08 Industrial Applications and Services IRS NUMBER: 222370659 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-36117 FILM NUMBER: 24930893 BUSINESS ADDRESS: STREET 1: 804 EAST GATE DR., SUITE 200 CITY: MT. LAUREL STATE: NJ ZIP: 08054 BUSINESS PHONE: 856-505-8800 MAIL ADDRESS: STREET 1: 804 EAST GATE DR., SUITE 200 CITY: MT. LAUREL STATE: NJ ZIP: 08054 10-Q 1 intt20240331_10q.htm FORM 10-Q intt20240331_10q.htm
0001036262 INTEST CORP false --12-31 Q1 2024 426 474 0.01 0.01 5,000,000 5,000,000 0 0 0 0 0.01 0.01 20,000,000 20,000,000 12,566,024 12,241,925 78,515 75,758 6 1 1 1,758 82 90 30 March 29, 2010 April 30, 2025 April 30, 2031 October 27, 2010 December 31, 2024 December 31, 2024 5 2 0 0 10 4 171,735 228,364 4 1 2 4 389 372 3 false false false false 00010362622024-01-012024-03-31 xbrli:shares 00010362622024-05-01 thunderdome:item iso4217:USD 00010362622024-03-31 00010362622023-12-31 iso4217:USDxbrli:shares 00010362622023-01-012023-03-31 0001036262us-gaap:CommonStockMember2023-12-31 0001036262us-gaap:AdditionalPaidInCapitalMember2023-12-31 0001036262us-gaap:RetainedEarningsMember2023-12-31 0001036262us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-31 0001036262us-gaap:TreasuryStockCommonMember2023-12-31 0001036262us-gaap:CommonStockMember2024-01-012024-03-31 0001036262us-gaap:AdditionalPaidInCapitalMember2024-01-012024-03-31 0001036262us-gaap:RetainedEarningsMember2024-01-012024-03-31 0001036262us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-03-31 0001036262us-gaap:TreasuryStockCommonMember2024-01-012024-03-31 0001036262us-gaap:CommonStockMember2024-03-31 0001036262us-gaap:AdditionalPaidInCapitalMember2024-03-31 0001036262us-gaap:RetainedEarningsMember2024-03-31 0001036262us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-31 0001036262us-gaap:TreasuryStockCommonMember2024-03-31 0001036262us-gaap:CommonStockMember2022-12-31 0001036262us-gaap:AdditionalPaidInCapitalMember2022-12-31 0001036262us-gaap:RetainedEarningsMember2022-12-31 0001036262us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-31 0001036262us-gaap:TreasuryStockCommonMember2022-12-31 00010362622022-12-31 0001036262us-gaap:CommonStockMember2023-01-012023-03-31 0001036262us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-31 0001036262us-gaap:RetainedEarningsMember2023-01-012023-03-31 0001036262us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-31 0001036262us-gaap:TreasuryStockCommonMember2023-01-012023-03-31 0001036262us-gaap:CommonStockMember2023-03-31 0001036262us-gaap:AdditionalPaidInCapitalMember2023-03-31 0001036262us-gaap:RetainedEarningsMember2023-03-31 0001036262us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-31 0001036262us-gaap:TreasuryStockCommonMember2023-03-31 00010362622023-03-31 xbrli:pure iso4217:EUR 0001036262intt:AlfamationMember2024-03-122024-03-12 0001036262intt:AlfamationMember2024-03-12 0001036262intt:AttheMarketIssuanceSalesAgreementMember2023-05-112023-05-11 0001036262intt:ElectronicTestMember2024-01-012024-03-31 0001036262intt:CityOfRochesterAndStateOfNewYorkMember2022-03-31 0001036262intt:CityOfRochesterAndStateOfNewYorkMember2024-03-31 utr:Y utr:sqft 0001036262intt:AlfamationMemberus-gaap:CustomerRelationshipsMember2024-03-122024-03-12 0001036262intt:AlfamationMemberus-gaap:TechnologyBasedIntangibleAssetsMember2024-03-122024-03-12 0001036262intt:AlfamationMemberus-gaap:CustomerRelatedIntangibleAssetsMember2024-03-122024-03-12 0001036262intt:AlfamationMemberus-gaap:TradeNamesMember2024-03-122024-03-12 0001036262intt:AlfamationMember2024-03-142024-03-31 0001036262intt:AlfamationMember2024-01-012024-03-31 0001036262intt:AlfamationMember2023-01-012023-03-31 0001036262us-gaap:OtherCurrentLiabilitiesMemberus-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2024-03-31 0001036262us-gaap:OtherCurrentLiabilitiesMemberus-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2023-12-31 0001036262intt:AcculogicMember2024-03-31 0001036262intt:AcculogicMemberus-gaap:FairValueInputsLevel1Member2024-03-31 0001036262intt:AcculogicMemberus-gaap:FairValueInputsLevel2Member2024-03-31 0001036262intt:AcculogicMemberus-gaap:FairValueInputsLevel3Member2024-03-31 0001036262us-gaap:InterestRateSwapMember2024-03-31 0001036262us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel1Member2024-03-31 0001036262us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Member2024-03-31 0001036262us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel3Member2024-03-31 0001036262intt:AcculogicMember2023-12-31 0001036262intt:AcculogicMemberus-gaap:FairValueInputsLevel1Member2023-12-31 0001036262intt:AcculogicMemberus-gaap:FairValueInputsLevel2Member2023-12-31 0001036262intt:AcculogicMemberus-gaap:FairValueInputsLevel3Member2023-12-31 0001036262us-gaap:InterestRateSwapMember2023-12-31 0001036262us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel1Member2023-12-31 0001036262us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Member2023-12-31 0001036262us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel3Member2023-12-31 0001036262intt:ContingentConsiderationLiabilitiesMember2023-12-31 0001036262intt:ContingentConsiderationLiabilitiesMember2024-01-012024-03-31 0001036262intt:ContingentConsiderationLiabilitiesMember2024-03-31 0001036262intt:ElectronicTestMember2024-03-31 0001036262intt:ElectronicTestMember2023-12-31 0001036262intt:EnvironmentalTechnologiesMember2024-03-31 0001036262intt:EnvironmentalTechnologiesMember2023-12-31 0001036262intt:ProcessTechnologiesMember2024-03-31 0001036262intt:ProcessTechnologiesMember2023-12-31 0001036262us-gaap:CustomerRelationshipsMember2024-03-31 0001036262us-gaap:PatentedTechnologyMember2024-03-31 0001036262us-gaap:PatentsMember2024-03-31 0001036262intt:CustomerBacklogMember2024-03-31 0001036262us-gaap:ComputerSoftwareIntangibleAssetMember2024-03-31 0001036262us-gaap:TradeNamesMember2024-03-31 0001036262us-gaap:TrademarksMember2024-03-31 0001036262us-gaap:CustomerRelationshipsMember2023-12-31 0001036262us-gaap:PatentedTechnologyMember2023-12-31 0001036262us-gaap:PatentsMember2023-12-31 0001036262intt:CustomerBacklogMember2023-12-31 0001036262us-gaap:ComputerSoftwareIntangibleAssetMember2023-12-31 0001036262us-gaap:TradeNamesMember2023-12-31 0001036262us-gaap:TrademarksMember2023-12-31 0001036262intt:EndUserMember2024-01-012024-03-31 0001036262intt:EndUserMember2023-01-012023-03-31 0001036262intt:OemIntegratorsAndDistributorMember2024-01-012024-03-31 0001036262intt:OemIntegratorsAndDistributorMember2023-01-012023-03-31 0001036262intt:ThermalTestingProductsMember2024-01-012024-03-31 0001036262intt:ThermalTestingProductsMember2023-01-012023-03-31 0001036262intt:ThermalProcessMember2024-01-012024-03-31 0001036262intt:ThermalProcessMember2023-01-012023-03-31 0001036262intt:SemiconductorProductionTestProductsMember2024-01-012024-03-31 0001036262intt:SemiconductorProductionTestProductsMember2023-01-012023-03-31 0001036262intt:VideoImagingMember2024-01-012024-03-31 0001036262intt:VideoImagingMember2023-01-012023-03-31 0001036262intt:FlyingProbeAndIncircuitTestersMember2024-01-012024-03-31 0001036262intt:FlyingProbeAndIncircuitTestersMember2023-01-012023-03-31 0001036262intt:AlfamationMember2024-01-012024-03-31 0001036262intt:AlfamationMember2023-01-012023-03-31 0001036262intt:ServiceAndOtherProductsMember2024-01-012024-03-31 0001036262intt:ServiceAndOtherProductsMember2023-01-012023-03-31 0001036262intt:SemiconductorMarketMember2024-01-012024-03-31 0001036262intt:SemiconductorMarketMember2023-01-012023-03-31 0001036262intt:IndustrialMarketMember2024-01-012024-03-31 0001036262intt:IndustrialMarketMember2023-01-012023-03-31 0001036262intt:AutomotiveMember2024-01-012024-03-31 0001036262intt:AutomotiveMember2023-01-012023-03-31 0001036262intt:LifeSciencesMember2024-01-012024-03-31 0001036262intt:LifeSciencesMember2023-01-012023-03-31 0001036262intt:DefenseAerospaceMember2024-01-012024-03-31 0001036262intt:DefenseAerospaceMember2023-01-012023-03-31 0001036262intt:SecurityMember2024-01-012024-03-31 0001036262intt:SecurityMember2023-01-012023-03-31 0001036262intt:OtherMultiMarketsMember2024-01-012024-03-31 0001036262intt:OtherMultiMarketsMember2023-01-012023-03-31 0001036262us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberintt:TexasInstrumentsIncorporatedMember2024-01-012024-03-31 0001036262us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberintt:TexasInstrumentsIncorporatedMember2023-01-012023-03-31 0001036262srt:MinimumMember2024-01-012024-03-31 0001036262srt:MaximumMember2024-01-012024-03-31 0001036262intt:AlfamationMemberintt:WarehouseAndOfficeSpaceMember2024-03-31 0001036262intt:AlfamationMemberintt:WarehouseAndOfficeSpaceMember2024-01-012024-03-31 0001036262intt:LeaseFacilityInSingaporeMember2024-03-31 utr:M 0001036262intt:EnvironmentalTechnologiesInGermanyMember2023-03-31 0001036262intt:ProcessTechnologiesInEuropeMemberintt:AutomobileLeasesMember2023-03-31 0001036262us-gaap:LetterOfCreditMemberintt:MtLaurelMember2024-01-012024-03-31 0001036262us-gaap:LetterOfCreditMemberintt:MtLaurelMember2024-03-31 0001036262us-gaap:LetterOfCreditMemberintt:MtLaurelMember2023-12-31 0001036262us-gaap:LetterOfCreditMemberintt:MansfieldMember2024-01-012024-03-31 0001036262us-gaap:LetterOfCreditMemberintt:MansfieldMember2024-03-31 0001036262us-gaap:LetterOfCreditMemberintt:MansfieldMember2023-12-31 0001036262us-gaap:LetterOfCreditMember2024-03-31 0001036262us-gaap:LetterOfCreditMember2023-12-31 0001036262intt:October2021AgreementMemberintt:MTBankMemberintt:TermNoteMember2021-10-15 0001036262us-gaap:RevolvingCreditFacilityMemberintt:October2021AgreementMemberintt:MTBankMember2021-10-15 0001036262intt:October2021AgreementMemberintt:MTBankMember2021-10-152021-10-15 0001036262intt:October2021AgreementMemberintt:MTBankMemberintt:TermNoteMember2021-10-152021-10-15 0001036262intt:AmendedLoanAgreementMemberintt:MTBankMemberintt:TermNoteMember2022-09-20 0001036262intt:AmendedLoanAgreementMemberintt:MTBankMemberintt:TermNoteMember2024-03-31 0001036262intt:AmendedLoanAgreementMemberintt:MTBankMember2024-03-31 0001036262us-gaap:RevolvingCreditFacilityMemberintt:October2021AgreementMemberintt:MTBankMember2024-01-012024-03-31 0001036262us-gaap:RevolvingCreditFacilityMemberintt:October2021AgreementMemberintt:MTBankMember2023-01-012023-03-31 0001036262intt:October2021AgreementMemberintt:MTBankMember2021-10-15 00010362622022-09-20 0001036262intt:October2021AgreementMemberintt:MTBankMemberintt:TermNoteMember2021-10-282021-10-28 0001036262intt:October2021AgreementMemberintt:MTBankMemberintt:TermNoteMember2021-10-28 0001036262intt:October2021AgreementMemberintt:MTBankMemberintt:TermNoteMember2021-12-292021-12-29 0001036262intt:October2021AgreementMemberintt:MTBankMemberintt:TermNoteMember2024-03-31 0001036262intt:AlfamationMember2024-03-31 0001036262intt:AlfamationMemberintt:DebtInstrumentLongtermFixedInterestRateDebtMember2024-03-31 0001036262intt:AlfamationMemberintt:DebtInstrumentShorttermVariableInterestRateDebtMember2024-03-31 0001036262intt:The2023StockIncentivePlanMember2024-03-31 0001036262intt:The2023StockIncentivePlanMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:CostOfSalesMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:CostOfSalesMember2023-01-012023-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:SellingAndMarketingExpenseMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:SellingAndMarketingExpenseMember2023-01-012023-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:ResearchAndDevelopmentExpenseMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:ResearchAndDevelopmentExpenseMember2023-01-012023-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:GeneralAndAdministrativeExpenseMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberus-gaap:GeneralAndAdministrativeExpenseMember2023-01-012023-03-31 0001036262us-gaap:RestrictedStockMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMember2023-01-012023-03-31 0001036262us-gaap:EmployeeStockOptionMember2024-01-012024-03-31 0001036262us-gaap:EmployeeStockOptionMember2023-01-012024-03-31 0001036262us-gaap:EmployeeStockOptionMember2023-01-012023-03-31 0001036262us-gaap:RestrictedStockMemberintt:EmployeesMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberintt:IndependentDirectorsMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberintt:IndependentDirectorsMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMemberintt:RestrictedStockVestingInThreeYearsMemberintt:VestingBasedOnPerformanceMetricsMember2020-08-012020-08-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMember2021-03-102021-03-10 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMember2023-01-012023-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberintt:SharebasedPaymentArrangementVestingOnThirdAnniversaryOfGrantDateMember2024-01-012024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-01-012024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMember2024-01-012024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMember2024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMember2021-10-012021-10-01 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberintt:VestingOnJanuary12025BasedOnPerformanceMetricsMember2021-10-012021-10-01 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberintt:VestingOnJanuary12025BasedOnPerformanceMetricsMember2023-01-012023-12-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:MembersOfTheSeniorManagementMemberintt:VestingOnJanuary12025BasedOnPerformanceMetricsMember2024-01-012024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember2022-03-092022-03-09 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerAndChiefFinancialOfficerMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2023-10-012023-12-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerAndChiefFinancialOfficerMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-01-012024-03-31 00010362622023-03-082023-03-08 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember2023-03-082023-03-08 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember2022-03-082022-03-08 0001036262intt:PerformancebasedRestrictedStockMemberintt:PresidentOfEnvironmentalTechnologiesMember2023-05-082023-05-08 0001036262intt:PerformancebasedRestrictedStockMemberintt:PresidentOfEnvironmentalTechnologiesMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-01-012024-03-31 0001036262intt:PerformancebasedRestrictedStockMemberintt:PresidentOfProcessTechnologiesMember2024-01-162024-01-16 0001036262intt:PerformancebasedRestrictedStockMemberintt:PresidentOfProcessTechnologiesMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-01-162024-01-16 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMember2024-03-062024-03-06 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-03-062024-03-06 0001036262intt:PerformancebasedRestrictedStockMemberintt:ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMemberus-gaap:ShareBasedCompensationAwardTrancheOneMember2024-01-012024-03-31 0001036262us-gaap:RestrictedStockMember2023-12-31 0001036262us-gaap:RestrictedStockMember2024-03-31 0001036262intt:EmployeeStockPurchasePlanMember2021-06-23 0001036262intt:EmployeeStockPurchasePlanMember2024-03-312024-03-31 0001036262intt:EmployeeStockPurchasePlanMember2024-03-31 0001036262intt:EmployeeStockPurchasePlanMember2024-01-012024-03-31 0001036262intt:EmployeeStockPurchasePlanMember2021-10-012024-03-31 0001036262intt:The401KPlanMember2024-01-012024-03-31 0001036262intt:TheAmbrellPlanMember2024-01-012024-03-31 0001036262intt:The401KPlanMember2023-01-012023-03-31 0001036262intt:TheAmbrellPlanMember2023-01-012023-03-31 0001036262us-gaap:OperatingSegmentsMemberintt:ElectronicTestMember2024-01-012024-03-31 0001036262us-gaap:OperatingSegmentsMemberintt:ElectronicTestMember2023-01-012023-03-31 0001036262us-gaap:OperatingSegmentsMemberintt:EnvironmentalTechnologiesMember2024-01-012024-03-31 0001036262us-gaap:OperatingSegmentsMemberintt:EnvironmentalTechnologiesMember2023-01-012023-03-31 0001036262us-gaap:OperatingSegmentsMemberintt:ProcessTechnologiesMember2024-01-012024-03-31 0001036262us-gaap:OperatingSegmentsMemberintt:ProcessTechnologiesMember2023-01-012023-03-31 0001036262us-gaap:OperatingSegmentsMember2024-01-012024-03-31 0001036262us-gaap:OperatingSegmentsMember2023-01-012023-03-31 0001036262us-gaap:CorporateNonSegmentMember2024-01-012024-03-31 0001036262us-gaap:CorporateNonSegmentMember2023-01-012023-03-31 0001036262us-gaap:CorporateMember2024-03-31 0001036262us-gaap:CorporateMember2023-12-31 0001036262country:US2024-01-012024-03-31 0001036262country:US2023-01-012023-03-31 0001036262us-gaap:NonUsMember2024-01-012024-03-31 0001036262us-gaap:NonUsMember2023-01-012023-03-31 0001036262country:US2024-03-31 0001036262country:US2023-12-31 0001036262us-gaap:NonUsMember2024-03-31 0001036262us-gaap:NonUsMember2023-12-31 0001036262intt:AssetMember2024-01-012024-03-31
 

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549

 


 

FORM 10-Q

 


(Mark One)

QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the quarterly period ended March 31, 2024 or

 

TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the transition period from                                       to                                     

 

Commission File Number 1-36117

inTEST Corporation
(Exact Name of Registrant as Specified in its Charter)

 

Delaware

(State or other jurisdiction of incorporation or organization)

22-2370659

(I.R.S. Employer Identification Number)

 

804 East Gate Drive, Suite 200
Mt. Laurel, New Jersey 08054
(Address of principal executive offices, including zip code)

(856) 505-8800
(Registrant's Telephone Number, including Area Code)

 

Securities registered pursuant to Section 12(b) of the Act:

 

Title of Each Class

Common Stock, par value $0.01 per share

Trading Symbol

INTT

Name of Each Exchange on Which Registered

NYSE American

 

Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.
Yes ☒      No ☐

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).
Yes ☒      No ☐

 

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company or an emerging growth company. See the definitions of "large accelerated filer," "accelerated filer" "smaller reporting company," and "emerging growth company" in Rule 12b-2 of the Exchange Act.

 

Large accelerated filer  ☐

Accelerated filer  ☒

Non-accelerated filer  ☐

Smaller reporting company  

Emerging growth company  

 

 

If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. ☐

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).
Yes       No ☒

 

Number of shares of Common Stock, $0.01 par value, outstanding as of the close of business on May 1, 2024:   12,489,642

 

 

 

 

inTEST CORPORATION

 

TABLE OF CONTENTS

 

 

Page

PART I.

FINANCIAL INFORMATION

 
     

Item 1.

Financial Statements

1
     
 

Consolidated Balance Sheets as of March 31, 2024 (Unaudited) and December 31, 2023

1
 

Unaudited Consolidated Statements of Operations for the three months ended March 31, 2024 and 2023

2
 

Unaudited Consolidated Statements of Comprehensive Earnings for the three months ended March 31, 2024 and 2023

3
 

Unaudited Consolidated Statements of Stockholders' Equity for the three months ended March 31, 2024 and 2023

4
 

Unaudited Consolidated Statements of Cash Flows for the three months ended March 31, 2024 and 2023

5
 

Notes to Consolidated Financial Statements

6
     

Item 2.

Management's Discussion and Analysis of Financial Condition and Results of Operations

24
     

Item 3.

Quantitative and Qualitative Disclosures About Market Risk

31
     

Item 4.

Controls and Procedures

32
     

PART II.

OTHER INFORMATION

33
     

Item 1.

Legal Proceedings

33
     

Item 1A.

Risk Factors

33
     

Item 2.

Unregistered Sales of Equity Securities and Use of Proceeds

33
     

Item 3.

Defaults Upon Senior Securities

33
     

Item 4.

Mine Safety Disclosures

33
     

Item 5.

Other Information

34
     

Item 6.

Exhibits

34
   

SIGNATURES

35

 

 

 

PART I. FINANCIAL INFORMATION

Item 1. FINANCIAL STATEMENTS

inTEST CORPORATION
CONSOLIDATED BALANCE SHEETS
(In thousands, except share and per share data)

 
  

March 31,

  

December 31,

 
  

2024

  

2023

 
  

(Unaudited)

     

ASSETS

        

Current assets:

        

Cash and cash equivalents

 $27,331  $45,260 

Trade accounts receivable, net of allowance for credit losses of $426 and $474, respectively

  22,859   18,175 

Inventories

  31,331   20,089 

Prepaid expenses and other current assets

  3,868   2,254 

Total current assets

  85,389   85,778 

Property and equipment:

        

Machinery and equipment

  8,639   7,118 

Leasehold improvements

  3,932   3,601 

Gross property and equipment

  12,571   10,719 

Less: accumulated depreciation

  (7,800)  (7,529)

Net property and equipment

  4,771   3,190 

Right-of-use assets, net

  6,270   4,987 

Goodwill

  33,278   21,728 

Intangible assets, net

  28,819   16,596 

Deferred tax assets

  -   1,437 

Restricted certificates of deposit

  100   100 

Other assets

  900   1,013 

Total assets

 $159,527  $134,829 
         

LIABILITIES AND STOCKHOLDERS' EQUITY

        

Current liabilities:

        

Current portion of Term Note and other long-term debt

 $9,629  $4,100 

Current portion of operating lease liabilities

  2,017   1,923 

Accounts payable

  11,395   5,521 

Accrued wages and benefits

  6,482   4,156 

Accrued professional fees

  883   1,228 

Customer deposits and deferred revenue

  5,596   3,797 

Accrued sales commissions

  1,116   1,055 

Domestic and foreign income taxes payable

  509   1,038 

Other current liabilities

  2,026   1,481 

Total current liabilities

  39,653   24,299 

Operating lease liabilities, net of current portion

  4,644   3,499 

Term Note and other long-term debt, net of current portion

  10,808   7,942 

Contingent consideration

  822   1,093 

Deferred revenue, net of current portion

  1,210   1,331 

Deferred tax liabilities

  1,126   - 

Other liabilities

  1,947   384 

Total liabilities

  60,210   38,548 

Commitments and Contingencies

          

Stockholders' equity:

        

Preferred stock, $0.01 par value; 5,000,000 shares authorized; no shares issued or outstanding

  -   - 

Common stock, $0.01 par value; 20,000,000 shares authorized; 12,566,024 and 12,241,925 shares issued, respectively

  125   122 

Additional paid-in capital

  56,954   54,450 

Retained earnings

  42,858   42,196 

Accumulated other comprehensive earnings

  311   414 

Treasury stock, at cost; 78,515 and 75,758 shares, respectively

  (931)  (901)

Total stockholders' equity

  99,317   96,281 

Total liabilities and stockholders' equity

 $159,527  $134,829 

 

See accompanying Notes to Consolidated Financial Statements.

 

 

-1-

 

inTEST CORPORATION
CONSOLIDATED STATEMENTS OF OPERATIONS
(In thousands, except share and per share data)

(Unaudited)

 
   

Three Months Ended

March 31,

 
   

2024

   

2023

 
                 

Revenue

  $ 29,824     $ 31,919  

Cost of revenue

    16,748       16,867  

Gross profit

    13,076       15,052  
                 

Operating expenses:

               

Selling expense

    4,590       4,455  

Engineering and product development expense

    1,982       1,904  

General and administrative expense

    6,012       5,175  

Total operating expenses

    12,584       11,534  
                 

Operating income

    492       3,518  

Interest expense

    (140 )     (182 )

Other income

    435       58  
                 

Earnings before income tax expense

    787       3,394  

Income tax expense

    125       577  
                 

Net earnings

  $ 662     $ 2,817  
                 

Earnings per common share – basic

  $ 0.06     $ 0.26  
                 

Weighted average common shares outstanding – basic

    12,026,361       10,755,729  
                 

Earnings per common share – diluted

  $ 0.05     $ 0.25  
                 

Weighted average common shares and common share equivalents outstanding – diluted

    12,158,297       11,088,664  

 

See accompanying Notes to Consolidated Financial Statements.

 

-2-

 

inTEST CORPORATION
CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS
(In thousands)

(Unaudited)

 
   

Three Months Ended

March 31,

 
   

2024

   

2023

 
                 

Net earnings

  $ 662     $ 2,817  
                 

Unrealized loss on interest rate swap agreement

    (14 )     (99 )

Foreign currency translation adjustments

    (89 )     170  
                 

Comprehensive earnings

  $ 559     $ 2,888  

 

See accompanying Notes to Consolidated Financial Statements

 

-3-

 

inTEST CORPORATION
CONSOLIDATED STATEMENTS OF STOCKHOLDERS EQUITY
(In thousands, except share data)

(Unaudited)

 
   

Three Months Ended March 31, 2024

 
                                                         
                                   

Accumulated

                 
                   

Additional

           

Other

           

Total

 
   

Common Stock

   

Paid-in

   

Retained

   

Comprehensive

   

Treasury

   

Stockholders'

 
   

Shares

   

Amount

   

Capital

   

Earnings

   

(Loss)

   

Stock

   

Equity

 
                                                         

Balance, January 1, 2024

    12,241,925     $ 122     $ 54,450     $ 42,196     $ 414     $ (901 )   $ 96,281  
                                                         

Net earnings

    -       -       -       662       -       -       662  

Other comprehensive loss

    -       -       -       -       (103 )     -       (103 )

Amortization of deferred compensation related to stock-based awards

    -       -       349       -       -       -       349  

Issuance of shares in connection with acquisition of Alfamation

    187,432       2       2,084       -       -       -       2,086  

Issuance of unvested shares of restricted stock

    138,838       1       (1 )     -       -       -       -  

Forfeiture of unvested shares of restricted stock

    (11,200 )     -       -       -       -       -       -  

Stock options exercised

    4,925       -       18       -       -       -       18  

Shares issued under Employee Stock Purchase Plan

    4,104       -       54       -       -       -       54  

Shares surrendered to satisfy tax liability at vesting of stock-based awards

    -       -       -       -       -       (30 )     (30 )
                                                         

Balance, March 31, 2024

    12,566,024     $ 125     $ 56,954     $ 42,858     $ 311     $ (931 )   $ 99,317  

 

   

Three Months Ended March 31, 2023

 
                                                         
                                   

Accumulated

                 
                   

Additional

           

Other

           

Total

 
   

Common Stock

   

Paid-in

   

Retained

   

Comprehensive

   

Treasury

   

Stockholders'

 
   

Shares

   

Amount

   

Capital

   

Earnings

   

Earnings

   

Stock

   

Equity

 
                                                         

Balance, January 1, 2023

    11,063,271     $ 111     $ 31,987     $ 32,854     $ 218     $ (214 )   $ 64,956  
                                                         

Net earnings

    -       -       -       2,817       -       -       2,817  

Other comprehensive earnings

    -       -       -       -       71       -       71  

Amortization of deferred compensation related to stock-based awards

    -       -       474       -       -       -       474  

Issuance of unvested shares of restricted stock

    90,588       1       (1 )     -       -       -       -  

Forfeiture of unvested shares of restricted stock

    (13,271 )     -       -       -       -       -       -  

Stock options exercised

    25,200       -       165       -       -       -       165  

Shares issued under Employee Stock Purchase Plan

    2,292       -       48       -       -       -       48  

Shares surrendered to satisfy tax liability at vesting of stock-based awards

    -       -       -       -       -       (33 )     (33 )
                                                         

Balance, March 31, 2023

    11,168,080     $ 112     $ 32,673     $ 35,671     $ 289     $ (247 )   $ 68,498  

 

See accompanying Notes to Consolidated Financial Statements

 

-4-

 

inTEST CORPORATION
CONSOLIDATED STATEMENTS OF CASH FLOWS
(In thousands)

(Unaudited)

 
   

Three Months Ended

March 31,

 
   

2024

   

2023

 

CASH FLOWS FROM OPERATING ACTIVITIES

               

Net earnings

  $ 662     $ 2,817  

Adjustments to reconcile net earnings to net cash provided by operating activities:

               

Depreciation and amortization

    1,282       1,176  

Provision for excess and obsolete inventory

    176       135  

Foreign exchange gain

    (28 )     (18 )

Amortization of deferred compensation related to stock-based awards

    349       474  

Discount on shares sold under Employee Stock Purchase Plan

    8       8  

Proceeds from sale of demonstration equipment, net of gain

    19       6  

Deferred income tax expense (benefit)

    226       (404 )

Changes in assets and liabilities:

               

Trade accounts receivable

    (982 )     291  

Inventories

    (396 )     (2,038 )

Prepaid expenses and other current assets

    508       (740 )

Other assets

    (22 )     2  

Operating lease liabilities

    (447 )     (423 )

Accounts payable

    1,311       403  

Accrued wages and benefits

    939       (654 )

Accrued professional fees

    (342 )     (142 )

Customer deposits and deferred revenue

    (782 )     921  

Accrued sales commissions

    66       (221 )

Domestic and foreign income taxes payable

    (406 )     864  

Other current liabilities

    70       43  

Deferred revenue, net of current portion

    (121 )     -  

Other liabilities

    (15 )     (16 )

Net cash provided by operating activities

    2,075       2,484  
                 

CASH FLOWS FROM INVESTING ACTIVITIES

               

Acquisition of business, net of cash acquired

    (18,904 )     -  

Purchase of property and equipment

    (340 )     (334 )

Net cash used in investing activities

    (19,244 )     (334 )
                 

CASH FLOWS FROM FINANCING ACTIVITIES

               

Proceeds from short-term borrowings

    273       -  

Repayments of long-term borrowings

    (1,181 )     (1,025 )

Proceeds from shares sold under Employee Stock Purchase Plan

    46       40  

Proceeds from stock options exercised

    18       165  

Settlement of employee tax liabilities in connection with treasury stock transaction

    (30 )     (33 )

Net cash used in financing activities

    (874 )     (853 )
                 

Effects of exchange rates on cash

    114       71  
                 

Net cash provided by (used in) all activities

    (17,929 )     1,368  

Cash, cash equivalents and restricted cash at beginning of period

    45,260       14,576  

Cash, cash equivalents and restricted cash at end of period

  $ 27,331     $ 15,944  
                 

Cash payments for:

               

Domestic and foreign income taxes

  $ 101     $ 118  
                 

Details of acquisition:

               

Fair value of assets acquired, net of cash

  $ 33,750          

Liabilities assumed

    (24,004 )        

Stock issued

    (2,086 )        

Cash holdback pending final working capital adjustment

    (552 )        

Goodwill resulting from acquisition

    11,796          

Net cash paid for acquisition

  $ 18,904          

 

See accompanying Notes to Consolidated Financial Statements.

 

-5-

 

 

inTEST CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(In thousands, except share and per share data)

 

(1)

NATURE OF OPERATIONS

 

We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing across a wide range of markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. We have three operating segments which are also our reportable segments and reporting units: Electronic Test, Environmental Technologies and Process Technologies.

On March 12, 2024 we completed the acquisition of Alfamation S.p.A., an Italian joint-stock company (“Alfamation”), for an aggregate base purchase price of approximately EUR 20,000 comprised of: (i) EUR 18,000, or $19,674, in cash; and (ii) 187,432 shares of our common stock, valued at $2,086 based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542, or $593 for assets delivered at closing in excess of agreed upon thresholds. The liabilities assumed in connection with the acquisition included debt of approximately EUR 8,616, or $9,418. The acquisition is discussed further in Note 3. The debt assumed is discussed further in Note 10.

 

The consolidated entity is comprised of inTEST Corporation and our wholly-owned subsidiaries. We manufacture our products in the U.S., Italy, Canada and the Netherlands. Marketing and support activities are conducted worldwide from our facilities in the U.S., Italy, Canada, Germany, Singapore, the Netherlands, China and the U.K. We operate our business worldwide and sell our products both domestically and internationally.

 

All of our operating segments have multiple products that we design, manufacture and market to our customers. Due to a number of factors, our products have varying levels of gross margin. The mix of products we sell in any period is ultimately determined by our customers’ needs. Therefore, the mix of products sold in any given period can change significantly from the prior period. In addition, we sell our products to a variety of different types of customers with varying levels of discounts and commission expense. As a result of changes in both the mix of products sold as well as customer mix in any given period, our consolidated gross margin can vary significantly from period to period.

 

The semiconductor market (“semi” or the “semi market”) which includes both the broader semiconductor market, as well as the more specialized automated test equipment (“ATE”) and wafer production sectors within the broader semiconductor market, has historically been the largest single market in which we operate. The semi market is characterized by rapid technological change, competitive pricing pressures and cyclical as well as seasonal market patterns. The semi market is also subject to periods of significant expansion or contraction in demand. In addition to the semi market, we sell into a variety of other markets. Our intention is to continue diversifying our markets, our product offerings within the markets we serve and our customer base across all of our markets with the goal of reducing our dependence on any one market, product or customer. In particular, we are seeking to reduce the impact of volatility in the semi market on our results of operations.

 

Our Electronic Test segment sells many of its products to semiconductor manufacturers and third-party test and assembly houses (end user sales) and to ATE manufacturers (original equipment manufacturer (“OEM”) sales), who ultimately resell our equipment with theirs to both semiconductor manufacturers and third-party test and assembly houses. These sales all fall within the ATE sector of the semi market. With the acquisition of Acculogic Inc. and its affiliates (“Acculogic”) in December 2021, and Alfamation in March 2024, our Electronic Test segment also sells its products to customers in markets outside the semi market including the automotive, defense/aerospace, industrial and life sciences and specialty consumer electronics markets. Our Environmental Technologies segment sells its products to end users and OEMs within the ATE sector of the semi market. It also sells its products to customers in a variety of other markets other than the semi market, including the automotive, defense/aerospace, industrial and life sciences markets. Our Process Technologies segment sells its products to customers in the wafer production sector within the semi market. It also sells its products to customers in a variety of other markets other than the semi market, including the automotive, defense/aerospace, industrial, life sciences and security markets.

 

Our financial results are affected by a wide variety of factors, including, but not limited to, general economic conditions worldwide and in the markets in which we operate, economic conditions specific to the semi market and the other markets we serve, downward pricing pressures from customers, our reliance on a relatively few number of customers for a significant portion of our sales and our ability to safeguard patented technology and intellectual property in a rapidly evolving market. In addition, we are exposed to the risk of obsolescence of our inventory depending on the mix of future business and technological changes within the markets that we serve. Part of our strategy for growth includes potential acquisitions that may cause us to incur substantial expense in reviewing and evaluating potential transactions. We may or may not be successful in locating suitable businesses to acquire and in closing acquisitions of businesses we pursue. In addition, we may not be able to successfully integrate any business we do acquire with our existing business and we may not be able to operate the acquired business profitably. As a result of these or other factors, we may experience significant period-to-period fluctuations in future operating results.

 

- 6-

 

On May 11, 2023, we entered into an At-the-Market Issuance Sales Agreement (the "Sales Agreement") pursuant to which we issued and sold 921,797 shares of our common stock having an aggregate offering price of $20,000 between May 11, 2023 and May 31, 2023. We received net proceeds from the sale of these shares of $19,244 after payment of commissions of 3.0% of the gross proceeds and other fees related to the sale of these shares.

 

 

(2)

SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES

 

Basis of Presentation and Use of Estimates

 

The accompanying consolidated financial statements include our accounts and those of our wholly owned subsidiaries. All significant intercompany accounts and transactions have been eliminated upon consolidation. The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America ("U.S. GAAP") requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates. Certain of our accounts, including contingent consideration, inventories, long-lived assets, goodwill, identifiable intangibles and deferred tax assets and liabilities, including related valuation allowances, are particularly impacted by estimates.

 

In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments (consisting only of normal recurring adjustments) necessary to present fairly the financial position, results of operations, and changes in cash flows for the interim periods presented. Certain footnote information has been condensed or omitted from these consolidated financial statements. Therefore, these consolidated financial statements should be read in conjunction with the consolidated financial statements and accompanying footnotes included in our Annual Report on Form 10-K for the year ended December 31, 2023 (the “2023 Form 10-K”) filed on March 27, 2024 with the Securities and Exchange Commission.

 

Reclassification

Certain prior period amounts have been reclassified to be comparable with the current period's presentation. 

 

Subsequent Events

We have made an assessment of our operations and determined that there were no material subsequent events requiring adjustment to, or disclosure in, our consolidated financial statements for the three months ended March 31, 2024 other than the matter discussed in Note 15.

 

Business Combinations

Acquired businesses are accounted for using the purchase method of accounting, which requires that the purchase price be allocated to the net assets acquired at their respective fair values. Any excess of the purchase price over the estimated fair values of the net assets acquired is recorded as goodwill. Fair values of intangible assets are estimated by valuation models prepared by our management and third-party advisors. The assets purchased and liabilities assumed have been reflected in our consolidated balance sheets, and the operating results are included in the consolidated statements of operations and consolidated statements of cash flows from the date of acquisition. Any change in the fair value of acquisition-related contingent consideration subsequent to the acquisition date, including changes from events after the acquisition date, will be recognized in the consolidated statement of operations in the period of the estimated fair value change. Acquisition-related transaction costs, including legal and accounting fees and other external costs directly related to the acquisition, are recognized separately from the acquisition and expensed as incurred in general and administrative expense in the consolidated statements of operations.

 

Cash, Cash Equivalents and Restricted Cash

 

Short-term investments that have maturities of three months or less when purchased are considered to be cash equivalents and are carried at cost, which approximates fair value. Our cash balances, which are deposited with highly reputable financial institutions, at times may exceed the federally insured limits. We have not experienced any losses related to these cash balances and believe the credit risk to be minimal.

 

Periodically we have restricted cash which represents amounts deposited at our banks to support bank guarantees which certain of our customers require as a condition of paying large deposits on orders they place with us. Typically, the amount of the deposit and related guarantee declines as shipments are made against the order. At March 31, 2024 and December 31, 2023, we had no amounts classified as restricted cash.

 

- 7-

 

Trade Accounts Receivable and Allowance for Credit Losses

 

Trade accounts receivable are recorded at the invoiced amount and do not bear interest. We grant credit to customers and generally require no collateral. To minimize our risk, we perform ongoing credit evaluations of our customers' financial condition. As discussed below under “Effect of Recently Adopted Amendments to Authoritative Accounting Guidance”, effective January 1, 2023, we follow the guidance in Accounting Standards Codification (“ASC”) Topic 326 (Financial Instruments – Credit Losses) in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. In establishing the amount of allowance for credit losses, we consider all information available as of the reporting date including information related to past events, such as historical loss rates and actual incurred losses, as well as current conditions that may indicate future risk of loss and any other factors of which we are aware, that we believe could impact the ultimate collectability of the related receivables in future periods.

 

Account balances are charged off against the allowance after all means of collection have been exhausted and the potential for recovery is considered remote. We do not have any significant off-balance sheet credit exposure related to our customers. Cash flows from accounts receivable are recorded in operating cash flows.

 

For the three months ended March 31, 2024, we utilized $48 of the allowance for credit losses to offset the write-off of a receivable in our Electronic Test segment. There were no other significant changes in the amount of the allowance for credit losses during this time period. There was no bad debt expense recorded for the three months ended March 31, 2024 or 2023.

 

Fair Value of Financial Instruments

 

Our financial instruments include cash and cash equivalents, restricted cash, short-term investments, accounts receivable, accounts payable, accrued expenses, our credit facility, interest rate swaps and our liabilities for contingent consideration. Our cash and cash equivalents, accounts receivable, accounts payable and accrued expenses are carried at cost which approximates fair value, due to the short maturities of the accounts. Our short-term investments are classified as held-to-maturity and carried at amortized cost. Our credit facility and our interest rate swap are discussed further below and in Note 10. Our liabilities for contingent consideration are accounted for in accordance with the guidance in ASC Topic 820 (Fair Value Measurement). ASC Topic 820 establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Our contingent consideration liabilities are measured at fair value on a recurring basis using Level 3 inputs which are inputs that are unobservable and significant to the overall fair value measurement. These unobservable inputs reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. See Note 4 for further disclosures related to the fair value of our liabilities for contingent consideration.

 

Goodwill, Intangible and Long-Lived Assets

 

We have three reportable segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies.

 

We account for goodwill and intangible assets in accordance with ASC Topic 350 (Intangibles - Goodwill and Other). Finite-lived intangible assets are amortized over their estimated useful economic life and are carried at cost less accumulated amortization. Goodwill is assessed for impairment annually at the beginning of the fourth quarter on a reporting unit basis, or more frequently when events and circumstances occur indicating that the recorded goodwill may be impaired. Goodwill is considered to be impaired if the fair value of a reporting unit is less than its carrying amount. As a part of the goodwill impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more-likely-than-not that the fair value of a reporting unit is less than its carrying amount. If, as a result of our qualitative assessment, we determine that it is more-likely-than-not that the fair value of the reporting unit is greater than its carrying amount, a quantitative goodwill impairment test is not required. However, if, as a result of our qualitative assessment, we determine it is more-likely-than-not that the fair value of a reporting unit is less than its carrying amount, or, if we choose not to perform a qualitative assessment, we are required to perform a quantitative goodwill impairment test to identify potential goodwill impairment and measure the amount of goodwill impairment loss to be recognized. 

 

The quantitative goodwill impairment test compares the fair value of a reporting unit with its carrying amount, including goodwill. If the fair value of a reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. If the carrying amount of a reporting unit exceeds its fair value, an impairment loss will be recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit. The goodwill impairment assessment is based upon the income approach, which estimates the fair value of our reporting units based upon a discounted cash flow approach. This fair value is then reconciled to our market capitalization at year end with an appropriate control premium. The determination of the fair value of our reporting units requires management to make significant estimates and assumptions including the selection of control premiums, discount rates, terminal growth rates, forecasts of revenue and expense growth rates, income tax rates, changes in working capital, depreciation, amortization and capital expenditures. Changes in assumptions concerning future financial results or other underlying assumptions could have a significant impact on either the fair value of the reporting unit or the amount of the goodwill impairment charge.

 

- 8-

 

Indefinite-lived intangible assets are assessed for impairment annually at the beginning of the fourth quarter, or more frequently if events or changes in circumstances indicate that the asset might be impaired. As a part of the impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more likely than not that an indefinite-lived intangible asset is impaired. If, as a result of our qualitative assessment, we determine that it is more-likely-than-not that the fair value of the indefinite-lived intangible asset is less than its carrying amount, the quantitative impairment test is required; otherwise, no further testing is required. The quantitative impairment test consists of a comparison of the fair value of the intangible asset with its carrying amount. If the carrying amount of the intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess.

 

Long-lived assets, which consist of finite-lived intangible assets, property and equipment and right-of-use (“ROU”) assets, are assessed for impairment whenever events or changes in business circumstances indicate that the carrying amount of the assets may not be fully recoverable or that the useful lives of these assets are no longer appropriate. Each impairment test is based on a comparison of the estimated undiscounted cash flows to the recorded value of the asset group. If impairment is indicated, the asset group is written down to its estimated fair value. The cash flow estimates used to determine the impairment, if any, contain management's best estimates using appropriate assumptions and projections at that time. 

 

Revenue Recognition

We recognize revenue in accordance with the guidance in ASC Topic 606 (Revenue from Contracts with Customers). We recognize revenue for the sale of products or services when our performance obligations under the terms of a contract with a customer are satisfied and control of the product or service has been transferred to the customer. Generally, this occurs when we ship a product or perform a service. In certain cases, recognition of revenue is deferred until the product is received by the customer or at some other point in the future when we have determined that we have satisfied our performance obligations under the contract. Our contracts with customers may include a combination of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. In addition to the sale of products and services, we also lease certain of our equipment to customers under short-term lease agreements. We recognize revenue from equipment leases on a straight-line basis over the lease term.

 

Revenue is recorded in an amount that reflects the consideration we expect to receive in exchange for those products or services. We do not have any material variable consideration arrangements, or any material payment terms with our customers other than standard payment terms which generally range from net 30 to net 90 days. We generally do not provide a right of return to our customers. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities.

 

Nature of Products and Services

 

We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing in targeted markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. Our Environmental Technologies segment sells thermal management products including ThermoStreams, ThermoChambers, process chillers, refrigerators and freezers, which we sell under our Temptronic, Sigma, Thermonics and North Sciences product lines. Our Process Technologies segment sells precision induction heating systems through our subsidiary, Ambrell Corporation (“Ambrell”), including EKOHEAT® and EASYHEAT™ products. This segment also sells industrial-grade circuit board mounted video digital cameras and related devices, systems and software through our Videology Imaging Corporation (“Videology”), subsidiary. Our Electronic Test segment sells semiconductor ATE interface solutions through our inTEST EMS (“EMS”) subsidiary, including manipulators, docking hardware and electrical interface products. This segment also sells robotics-based electronic production test equipment under the Acculogic tradename and, as a result of the acquisition of Alfamation on March 12, 2024, which is discussed further in Note 3, this segment now sells test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. We provide post-warranty service and support for the equipment we sell. We sell our products to various markets including the automotive, defense/aerospace, industrial, life sciences, security and semiconductor markets.

 

We lease certain of our equipment under short-term leasing agreements with original lease terms of six months or less. Our lease agreements do not contain purchase options.

 

Occasionally we procure and sell materials/components on behalf of and to our customers.

 

- 9-

 

Types of Contracts with Customers

 

Our contracts with customers are generally structured as individual purchase orders which specify the exact products or services being sold or equipment being leased along with the selling price, service fee or monthly lease amount for each individual item on the purchase order. Payment terms and any other customer-specific acceptance criteria are also specified on the purchase order. We generally do not have any customer-specific acceptance criteria, other than that the product performs within the agreed upon specifications. We test substantially all products manufactured as part of our quality assurance process to determine that they comply with specifications prior to shipment to a customer.

 

Contract Balances

 

We record accounts receivable at the time of invoicing. Accounts receivable, net of the allowance for credit losses, is included in current assets on our consolidated balance sheets. In certain instances, we also receive customer deposits in advance of invoicing and recording of accounts receivable. Customer deposits are included in current liabilities on our consolidated balance sheets. To the extent that we do not recognize revenue at the same time as we invoice, we record a liability for deferred revenue. Deferred revenue estimated to be recognized within the next twelve months is included in current liabilities. Deferred revenue that we estimate will be recognized beyond twelve months is recorded in Other Liabilities on our consolidated balance sheets. Any non-inventoriable costs associated with deferred revenue are also deferred and recorded in Prepaid Expenses and Other Current Assets or Other Assets on our consolidated balance sheets, depending on when the related deferred revenue is expected to be recognized.

 

As discussed above, we follow the guidance in ASC Topic 326 in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. We monitor the collectability of accounts receivable on an ongoing basis and record charges for bad debt expense in the period when we determine that a loss is expected to occur based on our assessment.
 

Costs to Obtain a Contract with a Customer

 

The only costs we incur associated with obtaining contracts with customers are sales commissions that we pay to our internal sales personnel or third-party sales representatives. These costs are calculated based on set percentages of the selling price of each product or service sold. Commissions are considered earned by our internal sales personnel at the time we recognize revenue for a particular transaction. Commissions are considered earned by third-party sales representatives at the time that revenue is recognized for a particular transaction. We record commission expense in our consolidated statements of operations at the time the commission is earned. Commissions earned but not yet paid are included in current liabilities on our balance sheets.

 

Product Warranties

 

In connection with the sale of our products, we generally provide standard one- or two-year product warranties which are detailed in our terms and conditions and communicated to our customers. Our standard warranties are not offered for sale separately from our products; therefore, there is not a separate performance obligation related to our standard warranties. We record estimated warranty expense for our standard warranties at the time of sale based upon historical claims experience. We offer customers an option to separately purchase an extended warranty on certain products. In the case of extended warranties, we recognize revenue in the amount of the sale price for the extended warranty on a straight-line basis over the extended warranty period. We record costs incurred to provide service under an extended warranty at the time the service is provided. Warranty expense is included in selling expense in our consolidated statements of operations.

 

See Notes 6 and 14 for further information about our revenue from contracts with customers.

 

Inventories

 

Inventories are valued at cost on a first-in, first-out basis, not in excess of market value. Cash flows from the sale of inventories are recorded in operating cash flows. On a quarterly basis, we review our inventories and record excess and obsolete inventory charges based upon our established objective excess and obsolete inventory criteria. Our criteria identify excess material as the quantity of material on hand that is greater than the average annual usage of that material over the prior three years. Our criteria identify obsolete material as material that has not been used in a work order during the prior twenty-four months. In certain cases, additional excess and obsolete inventory charges are recorded based upon current market conditions, anticipated product life cycles, new product introductions and expected future use of the inventory. The excess and obsolete inventory charges we record establish a new cost basis for the related inventories. We incurred excess and obsolete inventory charges of $176 and $135 for the three months ended March 31, 2024 and 2023, respectively.

 

- 10-


 

Leases

 

We account for leases in accordance with ASC Topic 842 (Leases). We determine if an arrangement is a lease at inception. A lease contract is within scope if the contract has an identified asset (property, plant or equipment) and grants the lessee the right to control the use of the asset during the lease term. The identified asset may be either explicitly or implicitly specified in the contract. In addition, the supplier must not have any practical ability to substitute a different asset and would not economically benefit from doing so for the lease contract to be in scope. The lessee’s right to control the use of the asset during the term of the lease must include the ability to obtain substantially all of the economic benefits from the use of the asset as well as decision-making authority over how the asset will be used. Leases are classified as either operating leases or finance leases based on the guidance in ASC Topic 842. Operating leases are included in operating lease ROU assets and operating lease liabilities in our consolidated balance sheets. Finance leases are included in property and equipment and financing lease liabilities. We do not currently have any financing leases.

 

ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. None of our leases provide an implicit rate; therefore, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease. We include these options in the determination of the amount of the ROU asset and lease liability when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Certain of our operating leases contain predetermined fixed escalations of minimum rentals and rent holidays during the original lease terms. Rent holidays are periods during which we have control of the leased facility but are not obligated to pay rent. For these leases, our ROU asset and lease liability are calculated including any rent holiday in the determination of the life of the lease.

 

We have lease agreements which contain both lease and non-lease components, which are generally accounted for separately. In addition to the monthly rental payments due, most of our leases for our offices and warehouse facilities include non-lease components representing our portion of the common area maintenance, property taxes and insurance charges incurred by the landlord for the facilities which we occupy. These amounts are not included in the calculation of the ROU assets and lease liabilities as they are based on actual charges incurred in the periods to which they apply.

 

Operating lease payments are included in cash outflows from operating activities on our consolidated statements of cash flows. Amortization of ROU assets is presented separately from the change in operating lease liabilities and is included in Depreciation and Amortization on our consolidated statements of cash flows.

 

We have made an accounting policy election not to apply the recognition requirements of ASC Topic 842 to short-term leases (leases with a term of one year or less at the commencement date of the lease). Lease expense for short-term lease payments is recognized on a straight-line basis over the lease term.

 

See Note 9 for further disclosures regarding our leases.

 

Interest Rate Swap Agreement

 

We are exposed to interest rate risk on our floating-rate debt. We have entered into an interest rate swap agreement to effectively convert our floating-rate debt to a fixed-rate basis for a portion of our floating rate debt, as discussed further in Notes 4 and 10. The principal objective of this agreement is to eliminate the variability of the cash flows for interest payments associated with our floating-rate debt, thus reducing the impact of interest rate changes on future interest payment cash flows. We have elected to apply the hedge accounting rules in accordance with ASC Topic 815 (Derivatives and Hedging). Further, we have determined that this agreement qualifies for the shortcut method of hedge accounting. Changes in the fair value of interest rate swap agreements designated as cash flow hedges are recorded as a component of accumulated other comprehensive earnings (loss) within stockholders’ equity and are amortized to interest expense over the term of the related debt. 

 

Contingent Liability for Repayment of State and Local Grant Funds Received

 

In connection with leasing a facility in Rochester, New York, which our subsidiary, Ambrell, occupied in May 2018, we entered into agreements with the city of Rochester and the state of New York under which we received grants totaling $550 to help offset a portion of the cost of the leasehold improvements we made to this facility. The final payment of $87 was received during the three months ended March 31, 2022. In exchange for the funds we received under these agreements, we are required to create and maintain specified levels of employment in this location through various dates ending in 2024. If we fail to meet these employment targets, we may be required to repay a proportionate share of the proceeds. At March 31, 2024, $123 of the total proceeds received could still be required to be repaid if we do not meet the targets. We have recorded this amount as a contingent liability which is included in other liabilities on our consolidated balance sheet. Those portions of the proceeds which are no longer subject to repayment are reclassified to deferred grant proceeds and amortized to income on a straight-line basis over the remaining lease term for the Rochester facility. Deferred grant proceeds are included in other current liabilities and other liabilities on our balance sheet and totaled $298 at March 31, 2024. At March 31, 2024, we were in compliance with the employment targets as specified in the grant agreement with the city of Rochester. 

 

- 11-

 

Stock-Based Compensation

We account for stock-based compensation in accordance with ASC Topic 718 (Compensation - Stock Compensation) which requires that employee share-based equity awards be accounted for under the fair value method and requires the use of an option pricing model for estimating fair value of stock options, which is then amortized to expense over the service periods. See further disclosures related to our stock-based compensation plans in Note 11.

 

Income Taxes

The asset and liability method is used in accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for operating loss and tax credit carryforwards and for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. A valuation allowance is recorded to reduce the carrying amounts of deferred tax assets if it is more likely than not that such assets will not be realized.

 

Earnings (Loss) Per Common Share

Earnings (loss) per common share - basic is computed by dividing net earnings (loss) by the weighted average number of common shares outstanding during each period. Earnings (loss) per common share - diluted is computed by dividing earnings (loss) by the weighted average number of common shares and common share equivalents outstanding during each period. Common share equivalents represent unvested shares of restricted stock and stock options and are calculated using the treasury stock method. Common share equivalents are excluded from the calculation if their effect is anti-dilutive.

 

The table below sets forth, for the periods indicated, a reconciliation of weighted average common shares outstanding - basic to weighted average common shares and common share equivalents outstanding - diluted and the average number of potentially dilutive securities that were excluded from the calculation of diluted earnings (loss) per share because their effect was anti-dilutive:

 

  

Three Months Ended

March 31,

 
  

2024

  

2023

 
         

Weighted average common shares outstanding–basic

  12,026,361   10,755,729 

Potentially dilutive securities:

        

Unvested shares of restricted stock and employee stock options

  131,936   332,935 

Weighted average common shares and common share equivalents outstanding–diluted

  12,158,297   11,088,664 

Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period

  434,584   154,429 

 

Effect of Recently Issued Amendments to Authoritative Accounting Guidance

 

In November 2023, the FASB issued amendments to the guidance for disclosures about reportable segments which require disclosures of significant expenses by segment and interim disclosure of items that were previously required on an annual basis. The amendments are to be applied on a retrospective basis and are effective for fiscal years beginning after December 15, 2023 and interim periods within fiscal years beginning after December 15, 2024. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.

 

In December 2023, the FASB issued amendments to the guidance for disclosures about income tax which provide for additional disclosures primarily related to the income tax rate reconciliations and income taxes paid. The amendments require entities to annually disclose the income tax rate reconciliation using both amounts and percentages, considering several categories of reconciling items, including state and local income taxes, foreign tax effects, tax credits and nontaxable or nondeductible items, among others. Disclosure of the reconciling items is subject to a quantitative threshold and disaggregation by nature and jurisdiction. The amendments also require entities to disclose net income taxes paid or received to federal, state and foreign jurisdictions, as well as by individual jurisdiction, subject to a five percent quantitative threshold. The amendments may be adopted on a prospective or retrospective basis and are effective for fiscal years beginning after December 15, 2024 with early adoption permitted. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.

 

-12-

 

(3)

ACQUISITION

 

On March 12, 2024 we completed the acquisition of Alfamation S.p.A., an Italian joint-stock company (“Alfamation”). Alfamation is a leading global provider of state-of-the-art test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. Alfamation is included in our Electronic Test operating segment. The acquisition of Alfamation deepens our presence in the automotive/EV and life science markets, expands our exposure in consumer electronics, extends our geographic reach with a sizable footprint in Europe, and widens our portfolio of products and solutions. Additionally, we believe Alfamation brings engineering talent and a management team that culturally aligns with our mission to provide innovative, engineered solutions that address the high-value challenges of our customers. The aggregate purchase price was approximately EUR 20,000 comprised of: (i) EUR 18,000, or $19,674, in cash; and (ii) 187,432 shares of our common stock, valued at $2,086 based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542, or $593 for assets delivered at closing in excess of agreed upon thresholds. The liabilities assumed in connection with the acquisition included debt of approximately EUR 8,616, or $9,418. The debt assumed is discussed further in Note 10. Total acquisition costs incurred to complete this transaction were $1,013. Acquisition costs were expensed as incurred and included in general and administrative expense.

 

In connection with the acquisition, we have entered into a lease agreement (the “Lease Agreement”) with the former owner of Alfamation who will continue to serve as the managing director of Alfamation under our ownership. The Lease Agreement commenced on March 12, 2024 and will last for six years. It will be automatically renewed for the same period of time unless terminated by either party. Under the terms of the Lease Agreement, Alfamation will lease warehouse and office space totaling about 51,817 square feet. Alfamation will pay a yearly lease payment of EUR 260 broken up into two equal payments. At the date of the signing of the Lease Agreement, the yearly lease payment equated to approximately $284.

The acquisition of Alfamation has been accounted for as a business combination using purchase accounting, and, accordingly, the results of Alfamation have been included in our consolidated results of operations from the date of acquisition. The allocation of the purchase price for Alfamation is not yet complete. The preliminary allocation of the Alfamation purchase price was based on estimated fair values as of March 12, 2024. We are currently working with third-party valuation specialists to assist us with our purchase accounting. The information that needs to be gathered from multiple sources, including the records and personnel at Alfamation, is not yet fully assembled. As a result, the values reflected below are preliminary and we expect that they may change. In particular, we expect that the total value assigned to our technology and customer relationships and the related deferred tax liabilities, the fair value of acquired accounts receivable, inventory and certain accrued expenses may all change as we finalize our assessments. In addition, the final working capital adjustment has also not yet been completed. Adjustments to these preliminary amounts will be included in the final allocation of the purchase price for Alfamation, which we expect to finalize in the second or third quarter of 2024. These adjustments could be material.

 

The excess of the purchase price over the identifiable intangible and net tangible assets was allocated to goodwill and is not deductible for tax purposes. Goodwill is attributed to synergies that are expected to result from the operations of the combined businesses.

 

The total purchase price of $22,353 has been allocated as follows:

 

Goodwill

 $11,796 

Identifiable intangible assets

  13,087 

Tangible assets acquired and liabilities assumed:

    

Cash

  811 

Trade accounts receivable

  4,004 

Inventories

  11,243 

Other current assets

  2,169 

Property and equipment

  1,597 

Other assets

  1,650 

Accounts payable

  (4,644)

Accrued expenses

  (4,311)

Other current liabilities

  (278)

Deferred tax liability

  (2,391)

Debt (current and long-term)

  (9,418)

Other non-current liabilities

  (2,962)

Total purchase price

 $22,353 

 

We estimated the fair value of identifiable intangible assets acquired using the income approach. Identifiable intangible assets acquired include customer relationships, customer backlog, technology and a tradename. We are amortizing the finite-lived intangible assets acquired over their estimated useful lives based on the pattern in which the economic benefits of the intangible asset are expected to be consumed.

 

- 13-

 

The following table summarizes the estimated fair value of Alfamation’s identifiable intangible assets and their estimated useful lives as of the acquisition date:

 

  

Fair

Value

  

Weighted

Average

Estimated

Useful Life

 
      

(in years)

 

Finite-lived intangible assets:

        

Customer relationships

 $5,949   15.0 

Technology

  340   10.0 

Customer backlog

  3,399   1.0 

Total finite-lived intangible assets

  9,688   9.9 
         

Indefinite-lived intangible assets:

        

Trade name

  3,399     

Total intangible assets

 $13,087     

 

For the period from March 13, 2024 to March 31, 2024, Alfamation contributed $1,379 of revenue and had a net loss of $101.

 

The following unaudited pro forma information gives effect to the acquisition of Alfamation as if the acquisition occurred on January 1, 2023. These proforma summaries do not reflect any operating efficiencies or costs savings that may be achieved by the combined businesses. These proforma summaries are presented for informational purposes only and are not necessarily indicative of what the actual results of operations would have been had the acquisition taken place as of that date, nor are they indicative of future consolidated results of operations:

 

  

Three Months Ended March 31,

 
  

2024

  

2023

 
         

Revenue

 $34,752  $38,473 

Net earnings

 $480  $3,227 

Diluted earnings per share

 $0.04  $0.29 

 

The pro forma results shown above do not reflect the impact on general and administrative expense of investment advisory costs, legal costs and other costs of $1,013 incurred by us as a direct result of the transaction.

 

 

(4)

FAIR VALUE MEASUREMENTS

 

ASC Topic 820 (Fair Value Measurement) establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Observable inputs are inputs that market participants would use in pricing the asset or liability based on market data obtained from sources independent of us. Unobservable inputs are inputs that reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances.

 

ASC 820 identifies fair value as the exchange price, or exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering market participant assumptions in fair value measurements, ASC 820 establishes a three-tier fair value hierarchy that distinguishes among the following:

 

Level 1 Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access.

 

Level 2 Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active and models for which all significant inputs are observable, either directly or indirectly.

 

Level 3 Valuations based on inputs that are unobservable and significant to the overall fair value measurement.

 

- 14-

 

To the extent that the valuation is based on models or inputs that are less observable or unobservable in the market, the determination of fair value requires more judgment. Accordingly, the degree of judgment exercised by us in determining fair value is greatest for instruments categorized in Level 3. A financial instrument's level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement.

 

Recurring Fair Value Measurements

 

The interest rate swap agreement we entered into in connection with our Term Note, as discussed further in Notes 2 and 10, is measured at fair value on a recurring basis using Level 2 inputs. The contingent consideration liability on our balance sheet is measured at fair value on a recurring basis using Level 3 inputs. Our contingent consideration liability is a result of our acquisition of Acculogic on December 21, 2021, and represents the estimated fair value of the additional cash consideration payable that is contingent upon sales to Electric Vehicle (“EV”) or battery customers. Our acquisition of Acculogic and this liability are both discussed further in Note 3 to our consolidated financial statements in our 2022 Form 10-K. The current portion of our contingent consideration liability was $247 and $0 at March 31, 2024 and December 31, 2023, respectively, and was included in Other Current Liabilities on our consolidated balance sheets.

 

The following fair value hierarchy table presents information about assets and (liabilities) measured at fair value on a recurring basis:

 

   

Amounts at

   

Fair Value Measurement Using

 
   

Fair Value

   

Level 1

   

Level 2

   

Level 3

 

As of March 31, 2024

                               

Contingent consideration liability – Acculogic

  $ (1,069 )   $ -     $ -     $ (1,069 )

Interest rate swap

  $ 271     $ -     $ 271     $ -  

 

   

Amounts at

   

Fair Value Measurement Using

 
   

Fair Value

   

Level 1

   

Level 2

   

Level 3

 

As of December 31, 2023

                               

Contingent consideration liability – Acculogic

  $ (1,093 )   $ -     $ -     $ (1,093 )

Interest rate swap

  $ 285     $ -     $ 285     $ -  

 

Changes in the fair value of our Level 3 contingent consideration liabilities for the three months ended March 31, 2024 were as follows:

 

   

Three

Months Ended

March 31, 2024

 

Balance at beginning of period

  $ 1,093  

Impact of foreign currency translation adjustments

    (24 )
         

Balance at end of period

  $ 1,069  

 

 

(5)

GOODWILL AND INTANGIBLE ASSETS

 

We have three operating segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies. Goodwill and intangible assets on our balance sheets are the result of our acquisitions.

 

Goodwill

Changes in the amount of the carrying value of goodwill for the three months ended March 31, 2024 are as follows:

 

Balance - January 1, 2024

  $ 21,728  

Acquisition of Alfamation

    11,796  

Impact of foreign currency translation adjustments

    (246 )

Balance - March 31, 2024

  $ 33,278  

 

- 15-

 

Goodwill was comprised of the following at March 31, 2024 and December 31, 2023:

 

  

March 31,

  

December 31,

 
  

2024

  

2023

 

Electronic Test

 $15,026  $3,436 

Environmental Technologies

  1,817   1,817 

Process Technologies

  16,435   16,475 

Total goodwill

 $33,278  $21,728 

 

Intangible Assets

Changes in the amount of the carrying value of indefinite-lived intangible assets for the three months ended March 31, 2024 are as follows:

 

Balance - January 1, 2024

  $ 8,398  

Acquisition of Alfamation

    3,399  

Impact of foreign currency translation adjustments

    (66 )

Balance - March 31, 2024

  $ 11,731  

 

Changes in the amount of the carrying value of finite-lived intangible assets for the three months ended March 31, 2024 are as follows:

 

Balance - January 1, 2024

  $ 8,198  

Acquisition of Alfamation

    9,688  

Impact of foreign currency translation adjustments

    (203 )

Amortization

    (595 )

Balance - March 31, 2024

  $ 17,088  

 

Intangible assets were allocated to our reporting segments at March 31, 2024 and December 31, 2023 as follows:

 

   

March 31,

   

December 31,

 
   

2024

   

2023

 

Electronic Test

    16,357       3,728  

Environmental Technologies

    796       794  

Process Technologies

    11,666       12,074  

Total intangible assets

  $ 28,819     $ 16,596  

 

The following tables provide further detail about our intangible assets as of March 31, 2024 and December 31, 2023:

 

   

March 31, 2024

 
   

Gross

Carrying

Amount

   

Accumulated

Amortization

   

Net

Carrying

Amount

 

Finite-lived intangible assets:

                       

Customer relationships

  $ 22,202     $ 10,082     $ 12,120  

Technology

    3,195       1,504       1,691  

Patents

    590       590       -  

Backlog

    3,851       574       3,277  

Software

    270       270       -  

Trade name

    140       140       -  

Total finite-lived intangible assets

    30,248       13,160       17,088  
Indefinite-lived intangible assets:                         

Trademarks

    11,731       -       11,731  

Total intangible assets

  $ 41,979     $ 13,160     $ 28,819  

 

   

December 31, 2023

 
   

Gross
Carrying
Amount

   

Accumulated

Amortization

   

Net
Carrying
Amount

 

Finite-lived intangible assets:

                       

Customer relationships

  $ 16,407     $ 9,687     $ 6,720  

Technology

    2,895       1,417       1,478  

Patents

    590       590       -  

Backlog

    499       499       -  

Software

    270       270       -  

Trade name

    140       140       -  

Total finite-lived intangible assets

    20,801       12,603       8,198  

Indefinite-lived intangible assets:

                       

Trademarks

    8,398       -       8,398  

Total intangible assets

  $ 29,199     $ 12,603     $ 16,596  

 

- 16-

 

We generally amortize our finite-lived intangible assets over their estimated useful lives based on the pattern in which the economic benefits of the intangible assets are expected to be consumed, or on a straight-line basis, if an alternate amortization method cannot be reliably determined. Any such alternate amortization method would be based on the pattern in which the economic benefits of the intangible asset are expected to be consumed. None of our intangible assets have any residual value.

 

The following table sets forth the estimated annual amortization expense for each of the next five years:

 

2024 (remainder)

  $ 4,384  

2025

  $ 2,863  

2026

  $ 1,577  

2027

  $ 1,083  

2028

  $ 952  

 

 

(6)

REVENUE FROM CONTRACTS WITH CUSTOMERS

 

The following tables provide additional information about our revenue from contracts with customers, including revenue by customer and product type and revenue by market. See also Note 14 for information about revenue by operating segment and geographic region.

 

   

Three Months Ended
March 31,

 
   

2024

   

2023

 

Revenue by customer type:

               

End user

  $ 21,430     $ 21,704  

OEM/Integrator

    8,394       10,215  
    $ 29,824     $ 31,919  

Revenue by product type:

               

Thermal test

  $ 3,699     $ 5,820  

Thermal process

    10,955       9,822  

Semiconductor test

    6,282       8,105  

Video imaging

    2,119       2,648  

Flying probe and in-circuit testers

    2,744       1,160  

Alfamation products

    1,379       -  

Service/other

    2,646       4,364  
    $ 29,824     $ 31,919  

Revenue by market:

               

Semiconductor

  $ 14,967     $ 17,683  

Industrial

    4,187       3,137  

Automotive (including Electric Vehicles)

    3,958       2,597  

Life Sciences

    653       1,513  

Defense/aerospace

    3,239       2,839  

Security

    541       966  

Other

    2,279       3,184  
    $ 29,824     $ 31,919  

 

 

(7)

MAJOR CUSTOMERS

 

During the three months ended March 31, 2024, one customer accounted for 15% of our consolidated revenue. This revenue was primarily generated by our Electronic Test segment. No other customers accounted for 10% or more of our consolidated revenue during the three months ended March 31, 2024. During the three months ended March 31, 2023, one customer accounted for 13% of our consolidated revenue. This revenue was primarily generated by our Electronic Test segment. No other customers accounted for 10% or more of our consolidated revenue during the three months ended March 31, 2023.

 

-17-

 

(8)

INVENTORIES

 

Inventories held at March 31, 2024 and December 31, 2023 were comprised of the following:

 

   

March 31,

2024

   

December 31,

2023

 

Raw materials

  $ 17,104     $ 15,948  

Work in process

    9,419       1,563  

Inventory consigned to others

    114       98  

Finished goods

    4,694       2,480  

Total inventories

  $ 31,331     $ 20,089  

 

 

(9) 

LEASES 

 

As previously discussed in Note 2, we account for our leases in accordance with the guidance in ASC Topic 842. We lease our offices, warehouse facilities and certain equipment under non-cancellable operating leases that expire at various dates through 2031. Total operating lease and short-term lease costs for the three months ended March 31, 2024 and 2023, respectively, were as follows: 

 

  

Three Months Ended March 31,

 
  

2024

  

2023

 
         

Operating lease cost

 $451  $400 

Short-term lease cost

 $3  $3 

 

The following is additional information about our leases as of March 31, 2024:

 

Range of remaining lease terms (in years)

 .5to7.1 

Weighted average remaining lease term (in years)

  4.5  

Weighted average discount rate

  5.3%  

 

Maturities of lease liabilities as of March 31, 2024 were as follows:

 

2024

 $1,896 

2025

  1,644 

2026

  1,313 

2027

  1,093 

2028

  675 

Thereafter

  869 

Total lease payments

 $7,490 

Less imputed interest

  (829)

Total

 $6,661 

 

Cash Flow Information

 

Total amortization of ROU assets for the three months ended March 31, 2024 and 2023 was $403 and $391, respectively.

 

During the three months ended March 31, 2024 we acquired several auto leases in connection with our acquisition of Alfamation. The acquisition is discussed further in Note 3. We also entered into the Lease Agreement, described in Note 3, for the facility where Alfamation has its principal operations. This facility is owned by the seller. The leased premises include warehouse and office space totaling approximately 51,817 square feet. The yearly lease payment is EUR 260. The impact of the acquisition of these leases was a non-cash increase in our ROU assets and operating lease liabilities of approximately $1,758 at the date of the acquisition.

 

During the three months ended March 31, 2024 we also extended the lease for the facility for our Environmental Technologies segment’s operation in Singapore. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $82.

During the three months ended March 31, 2023, we entered into a 25-month lease for a facility for our Environmental Technologies segment’s operation in Germany. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $90. During this same period, we entered into a 36-month lease for a car for one of the employees of our Process Technologies segment who is based in Europe. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $30.

 

-18-

 

(10)

DEBT

 

Letters of Credit

We have issued letters of credit as the security deposits for certain of our domestic leases. These letters of credit are secured by pledged certificates of deposit which are classified as Restricted Certificates of Deposit on our balance sheets. The terms of our leases require us to renew these letters of credit at least 30 days prior to their expiration dates for successive terms of not less than one year until lease expiration. Our outstanding letters of credit at March 31, 2024 and December 31, 2023 consisted of the following:

 

       

L/C

 

Lease

 

Letters of Credit

Amount Outstanding

 

Facility

 

Original L/C

Issue Date

 

Expiration

Date

 

Expiration

Date

 

Mar. 31,

2024

   

Dec. 31,

2023

 

Mt. Laurel, NJ

 

3/29/2010

 

4/30/2025

 

4/30/2031

  $ 50     $ 50  

Mansfield, MA

 

10/27/2010

 

12/31/2024

 

12/31/2024

    50       50  
                $ 100     $ 100  

 

Credit Facility

 

On October 15, 2021 (the “Closing Date”), we entered into an Amended and Restated Loan and Security Agreement with M&T Bank (“M&T”) which, on October 28, 2021, was amended by the Joinder and Amendment to Amended and Restated Loan and Security Agreement and which, on December 30, 2021, was further amended by the Joinder and Second Amendment to Amended and Restated Loan and Security Agreement (as amended, the “Loan Agreement”).

 

The Loan Agreement included a $25,000 non-revolving delayed draw term note (the “Term Note”) and a $10,000 revolving credit facility (the “Revolving Facility” and together with the Term Note, the “Credit Facility”). The Credit Facility had a five-year contract period that began on the Closing Date and expired on October 15, 2026, and draws under the Term Note were permissible for two years.

 

On September 20, 2022, we further amended the Loan Agreement by entering into a Third Amendment to Amended and Restated Loan and Security Agreement (the Loan Agreement, as amended by the Third Amendment, the “Third Amended Loan Agreement”) and the Third Amended and Restated Delayed Draw Term Note. Under the Third Amended Loan Agreement, the maximum loan amount that we may borrow under the Term Note increased from $25,000 to $50,500, which raises the available funding at March 31, 2024 to $30,000. On May 2, 2024 we further amended our Third Amended Loan Agreement by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we may request advances under the Term Note is extended until May 2, 2026, and the Term Note and revolving credit facility maturity date is extended from September 19, 2027 to May 2, 2031 (the “Contract Period”). At March 31, 2024, we had not borrowed any amounts under the $10 million Revolving Facility. Our borrowings under the Term Note are discussed below and occurred prior to entering into the Amended Loan Agreement. 

 

The principal balance of the Revolving Facility and the principal balance of any amount drawn under the Term Note accrues interest based on the secured overnight financing rate for U.S. government securities (“SOFR”) or a bank-defined base rate plus an applicable margin, depending on leverage. Each draw under the Term Note will have an option for us of either (i) up to a five year amortizing term loan with a balloon due at maturity, or (ii) up to a five year term with up to seven years amortization with a balloon due at maturity. Any amortization greater than five years will be subject to an excess cash flow recapture. The Amended Loan Agreement also allows us to enter into hedging contracts with M&T, including interest rate swap agreements, interest rate cap agreements, interest rate collar agreements, or any other agreements or that are designed to protect us against fluctuations in interest rates or currency exchange rates. Interest expense for the three months ended March 31, 2024 and 2023 was $140 and $182, respectively.

The Amended Loan Agreement contains customary default provisions, including but not limited to the failure by us to repay obligations when due, violation of provisions or representations provided in the Amended Loan Agreement, bankruptcy by us, suspension of our business or any of our subsidiaries and certain material judgments. After expiration of the Contract Period or if a continued event of default occurs, interest will accrue on the principal balance at a rate of 2% in excess of the then applicable nondefault interest rate. The Amended Loan Agreement includes customary affirmative, negative and financial covenants, including a maximum ratio of consolidated funded debt to consolidated EBITDA of not more than 3.0 to 1.0 and a fixed charge coverage ratio of not less than 1.25 to 1.0. Our obligations under the Amended Loan Agreement are secured by liens on substantially all of our tangible and intangible assets that are owned as of the Closing Date or acquired thereafter. At March 31, 2024, we were in compliance with all of the covenants included in the Credit Facility including the debt covenants of the Amended Loan Agreement.

 

- 19-

 

On October 28, 2021, we drew $12,000 under the Term Note to finance the acquisition of Videology as discussed above. We also entered into an interest rate swap agreement with M&T as of this date which is designed to protect us against fluctuations in interest rates during the five year repayment and amortization period. As a result, the annual interest rate we expect to pay for this draw under the Term Note is fixed at approximately 3.2% based on current leverage.

 

On December 29, 2021, we drew $8,500 under the Term Note to finance the acquisition of Acculogic as discussed above. We did not enter into an interest rate swap agreement with M&T related to this draw. The annual interest rate we expect to pay for this draw under the Term Note is variable. At March 31, 2024, it was approximately 7.4% based on current leverage. Effective May 1, 2024, this rate had not changed.

 

The following table sets forth the maturities of the Term Note for each of the next five years:

 

2024 (remainder)

  $ 3,075  

2025

    4,100  

2026

    3,842  
    $ 11,017  

 

Alfamation Debt

 

At March 31, 2024, the total debt assumed in connection with the acquisition of Alfamation was valued at $9,420. The acquisition is discussed further in Note 3. This debt is comprised of both fixed and variable rate bank issued term loans as well as $2,130 of short-term variable rate financing backed by Alfamation’s accounts receivable. This debt is spread across a number of different institutions with monthly, quarterly or half-yearly repayment schedules. The average interest rate being paid at March 31, 2024 was 1.9% for fixed rate debt and 5.0% for variable rate debt. The average rate for total debt at March 31, 2024 was 4.0%.

 

The following table sets forth the maturities of this debt for each of the next five years:

 

2024 (remainder)

  $ 4,987  

2025

    2,085  

2026

    1,293  

2027

    807  

2028

    248  
    $ 9,420  

 

 

(11) 

STOCK-BASED COMPENSATION PLAN

 

As of March 31, 2024, we had unvested restricted stock awards and stock options granted under stock-based compensation plans that are described more fully in Note 13 to the consolidated financial statements in our 2023 Form 10-K.

 

Our unvested restricted stock awards and stock options are accounted for based on their grant date fair value. As of March 31, 2024, total compensation expense to be recognized in future periods was $4,813. The weighted average period over which this expense is expected to be recognized was 2.5 years.

 

The following table summarizes the compensation expense we recorded during the three months ended March 31, 2024 and 2023 related to unvested shares of restricted stock and stock options:

 

  

Three Months Ended

March 31,

 
  

2024

  

2023

 

Cost of revenue

 $31  $19 

Selling expense

  11   10 

Engineering and product development expense

  4   10 

General and administrative expense

  303   435 
  $349  $474 

 

There was no compensation expense capitalized in three months ended March 31, 2024 or 2023. 

 

- 20-

 

Stock Options

We record compensation expense for stock options based on the fair market value of the options as of the grant date. No option may be granted with an exercise period in excess of ten years from the date of grant. Generally, stock options will be granted with an exercise price equal to the fair market value of our stock on the date of grant and will vest over four years.

The fair value for stock options granted during the three months ended March 31, 2024 and 2023 was estimated at the date of grant using the Black-Scholes option pricing model with the following weighted average assumptions:

 

  

2024

  

2023

 

Risk-free interest rate

  3.98%  3.94%

Dividend yield

  0.00%  0.00%

Expected common stock market price volatility factor

  .57   .57 

Weighted average expected life of stock options (years)

  6.25   6.25 

 

The per share weighted average fair value of stock options issued during the three months ended March 31, 2024 and 2023 was $6.55 and $9.32, respectively.

 

The following table summarizes the activity related to stock options for the three months ended March 31, 2024:

 

  

Number

of Shares

  

Weighted

Average

Exercise Price

 

Options outstanding, January 1, 2024 (171,735 exercisable)

  505,006  $10.46 

Granted

  165,364   11.33 

Exercised

  (4,925)  3.69 

Canceled

  (23,401)  10.27 

Options outstanding, March 31, 2024 (228,364 exercisable)

  642,044   10.74 

 

Restricted Stock Awards

We record compensation expense for restricted stock awards based on the quoted market price of our stock at the grant date and amortize the expense over the vesting period. Restricted stock awards generally vest over four years for employees and over one year for our independent directors (25% at each of March 31, June 30, September 30, and December 31 of the year in which they were granted).

 

Since August 2020, we have increasingly granted performance-based restricted stock awards where the ultimate number of shares that vest can vary between 0% and 150% of the amount of the original award and is based on the achievement of specified performance metrics. Vesting for these awards is generally cliff vesting at the end of the period over which the performance metrics are measured. Compensation expense for these awards is recorded on a straight-line basis over the vesting period and is based on the expected final vesting percentage, which is re-assessed at the end of each reporting period and adjusted with a catch-up adjustment, as needed. Our initial assumption at the grant date of these awards is that the award will vest at the 100% level.

 

On March 10, 2021, we issued restricted stock awards totaling 18,000 shares to members of senior management within our operating segments. During the first quarter of 2023, 6,000 of these shares were forfeited when the individual to whom they had been granted resigned from his position with us. The remaining 12,000 shares vested on the third anniversary of the grant date at vesting percentages of 75% for 6,000 of the shares and 100% for the remaining 6,000 shares. The final vesting percentages were based on the achievement of certain performance metrics related to the operating results of the business units for which these members of management are responsible.

 

On October 1, 2021, we issued restricted stock awards totaling 5,000 shares to a member of senior management. These shares will vest on January 1, 2025 at a vesting percentage that could range from 0% to 150% of the number of shares awarded on October 1, 2021. The final vesting percentage will be based on the achievement of certain performance metrics related to our consolidated operating results. At December 31, 2023, we reduced the estimate of the final vesting percentage to 50%. At March 31, 2024, this estimate was further reduced to 0% based on our current assessment of the probable achievement against the relevant performance metrics.

 

On March 9, 2022, our CEO and CFO received restricted stock awards totaling 20,493 shares valued at $200 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on March 9, 2022. The final vesting percentage will be based on the achievement of certain performance metrics, including revenue compound annual growth rate and diluted earnings per share excluding amortization of intangibles, for specified time periods as determined by the Compensation Committee of our Board of Directors. At December 31, 2023, we reduced the estimate of the final vesting percentage to 50%. At March 31, 2024, this estimate was further reduced to 0% based on our current assessment of the probable achievement against the relevant performance metrics. 

 

- 21-

 

On March 8, 2023, our CEO, CFO and the Division Presidents of two of our operating segments received restricted stock awards totaling 18,888 shares valued at $303 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on March 8, 2023. The final vesting percentage will be based on the achievement of certain performance metrics related to revenue for the year ending December 31, 2025 as determined by the Compensation Committee of our Board of Directors. At March 31, 2024, we have estimated that these shares will vest at 100% of the original amount based on our assessment of the probable achievement against the relevant performance metrics. 

On May 8, 2023 the newly appointed president of our Environmental Technologies segment received performance-based restricted stock awards totaling 5,081 shares valued at $108 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares of restricted stock awarded on May 8, 2023. The final vesting percentage will be based on the achievement of certain performance metrics including revenue and income from operations for specified time periods. As of March 31, 2024, we have estimated that these shares will vest at 100% of the original amount.

On January 16, 2024 the newly appointed president of our Process Technologies segment received performance-based restricted stock awards totaling 8,231 shares valued at $100 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares of restricted stock awarded on January 16, 2024. The final vesting percentage will be based on the achievement of certain performance metrics including revenue and income from operations for specified time periods. As of March 31, 2024, we have estimated that these shares will vest at 100% of the original amount.

On March 6, 2024, our CEO, CFO and the Division Presidents of our three operating segments received restricted stock awards totaling 33,539 shares valued at $380 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on March 6, 2024. The final vesting percentage will be based on the achievement of certain performance metrics related to adjusted EBITDA for the year ended December 31, 2026 as determined by the Compensation Committee of our Board of Directors. At March 31, 2024, we have estimated that these shares will vest at 100% of the original amount based on our assessment of the probable achievement against the relevant performance metrics. 

 

The following table summarizes the activity related to unvested restricted stock awards for the three months ended March 31, 2024:

 

  

Number

of Shares

  

Weighted

Average

Grant Date

Fair Value

 

Unvested shares outstanding, January 1, 2024

  189,784  $11.51 

Granted

  138,838   11.38 

Vested

  (39,790)  11.52 

Forfeited

  (11,200)  12.29 

Unvested shares outstanding, March 31, 2024

  277,632   11.41 

 

The total fair value of the restricted stock awards that vested during the three months ended March 31, 2024 and 2023 was $463 and $381, respectively, as of the vesting dates of these awards. 

 

 

(12) 

EMPLOYEE STOCK PURCHASE PLAN

 

The inTEST Corporation Employee Stock Purchase Plan (the “ESPP”) was adopted by the Board in April 2021 subject to approval by our stockholders, which occurred on June 23, 2021 at our Annual Meeting of Stockholders. The ESPP provides our eligible employees with an opportunity to purchase common stock through accumulated payroll deductions at a discounted purchase price. The ESPP became effective on October 1, 2021.

 

The ESPP provides that an aggregate of up to 250,000 shares of our common stock will be available for issuance under the ESPP. The shares of our common stock purchasable under the ESPP will be shares of authorized but unissued or reacquired shares, including shares repurchased by us on the open market.

 

- 22-

 

On March 31, 2024, employees purchased 4,104 shares of our stock through the ESPP at a cost of $46. The closing market price on the date of the purchase was $13.25. The price paid by employees was $11.26 which represented a 15% discount. The total amount of the discount of $8 was recorded as compensation expense in our consolidated statements of operations. From the effective date of the ESPP through March 31, 2024, a total of 47,037 shares of stock have been purchased by employees through the ESPP at a cost of $460. We have recorded a total of $81 of compensation expense in our consolidated statements of operations related to these shares.

 

 

(13) 

EMPLOYEE BENEFIT PLANS

 

We have defined contribution 401(k) plans for our employees who work in the U.S. These plans include the inTEST Corporation Incentive Savings Plan (the “inTEST Plan”) and the Ambrell Corporation Savings & Profit Sharing Plan (the "Ambrell Plan"). During the quarter ended September 30, 2023, the Ambrell Plan, which is discussed further below, was merged into the inTEST Plan.

As of March 31, 2024, all permanent employees of Acculogic Ltd, Ambrell, inTEST Corporation, inTEST EMS LLC, Temptronic Corporation and Videology, who are at least 18 years of age, are eligible to participate in the inTEST Plan. We match employee contributions dollar for dollar up to 10% of the employee's annual compensation, with a maximum limit of $5. Employer contributions vest ratably over four years. Matching contributions are discretionary. Prior to the merger with the inTEST Plan, all permanent employees of Ambrell were immediately eligible to participate in the Ambrell Plan upon employment and were eligible for employer matching contributions after completing six months of service, as defined in the Ambrell Plan. The Ambrell Plan allowed eligible employees to make voluntary contributions up to 100% of compensation, up to the federal government contribution limits. We made a matching contribution of 50% of each employee's contributions up to a maximum of 10% of the employee's deferral with a maximum limit of $5.

 

For the three months ended March 31, 2024 and 2023, we recorded expense for matching contributions to both plans of $389 and $372, respectively.

Employees of Alfamation in Italy are entitled to Trattamento di Fine Rapporto (“TFR”), commonly referred to as an employee leaving indemnity, which represents deferred compensation for employees. Under Italian law, an entity is obligated to accrue for TFR on an individual employee basis payable to each individual upon termination of employment (including both voluntary and involuntary dismissal). The expense is recognized in personnel costs in our consolidated statements of operations and the required accrual is included in Other Liabilities on our consolidated balance sheets. At March 31, 2024, the amount recorded in Other Liabilities for TFR was $1,596.

 

 

(14) 

SEGMENT INFORMATION

 

We have three operating segments which are also our reportable segments and reporting units: Electronic Test (which includes our semiconductor test equipment, flying probe and in-circuit testers and the operations of Alfamation which we acquired on March 12, 2024 as discussed further in Note 3), Environmental Technologies (which includes our thermal test, process and storage products) and Process Technologies (which includes our induction heating and video imaging products). We operate our business worldwide and sell our products both domestically and internationally. All of our segments sell to semiconductor manufacturers, third-party test and assembly houses and ATE manufacturers and to a variety of markets outside of the semi market, including the automotive, defense/aerospace, industrial, life sciences, security and other markets.

 

Our management team, including our CEO who is also our Chief Operating Decision Maker as defined under U.S. GAAP, evaluates the performance of our operating segments primarily on income from divisional operations which represents earnings before income tax expense and excludes interest expense, other income (expense), corporate expenses and acquired intangible amortization.

 

   

Three Months Ended

March 31,

 
   

2024

   

2023

 

Revenue:

               

Electronic Test

  $ 11,116     $ 10,371  

Environmental Technologies

    6,828       8,042  

Process Technologies

    11,880       13,506  

Total revenue

  $ 29,824     $ 31,919  
                 

Income from divisional operations:

               

Electronic Test

  $ 1,813     $ 2,578  

Environmental Technologies

    15       1,013  

Process Technologies

    1,961       2,676  

Total income from divisional operations

    3,789       6,267  

Corporate expenses

    (2,702 )     (2,205 )

Acquired intangible amortization

    (595 )     (544 )

Interest expense

    (140 )     (182 )

Other income (expense)

    435       58  

Earnings before income tax expense

  $ 787     $ 3,394  

 

- 23-

 
   

March 31,

   

December 31,

 
   

2024

   

2023

 

Identifiable assets:

               

Electronic Test

  $ 75,508     $ 32,505  

Environmental Technologies

    16,624       16,772  

Process Technologies

    57,815       56,842  

Corporate

    9,580       28,710  
    $ 159,527     $ 134,829  

 

The following table provides information about our geographic areas of operation. Revenue is based on the location to which the goods are shipped.

 

   

Three Months Ended
March 31,

 
   

2024

   

2023

 

Revenue:

               

U.S.

  $ 10,477     $ 11,090  

Foreign

    19,347       20,829  
    $ 29,824     $ 31,919  

 

   

March 31,

   

December 31,

 
   

2024

   

2023

 

Property and equipment:

               

U.S.

  $ 2,502     $ 2,502  

Foreign

    2,269       688  
    $ 4,771     $ 3,190  

 

 

(15) 

SUBSEQUENT EVENT 

 

On May 2, 2024 we further amended our Loan Agreement with M&T, which is discussed in Note 10, by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we may request advances under the Term Note is extended until May 2, 2026, and the Term Note and revolving credit facility maturity date is extended from September 19, 2027 to May 2, 2031.

 

Item 2.

MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

 

Risk Factors and Forward-Looking Statements

 

In addition to historical information, this Quarterly Report on Form 10-Q for the period ended March 31, 2024 (this “Report”), including this management’s discussion and analysis (“MD&A”), contains statements that are considered "forward-looking statements" within the meaning of the Private Securities Litigation Reform Act of 1995, as amended. These statements do not convey historical information, but relate to predicted or potential future events, such as statements of our plans, strategies and intentions, or our future performance or goals, projections of revenue, taxable earnings (loss), net earnings (loss), net earnings (loss) per share, capital expenditures and other financial items, that are based on management’s current expectations and estimates. Our forward-looking statements can often be identified by the use of forward-looking terminology such as “believes,” “expects,” “may,” “could,” “will,” “should,” “plans,” “depending,” “forecasts,” “seeking,” “anticipates,” “goal,” “objective,” “target,” “estimates,” “future,” “strategy,” or variations of such words or similar terminology. Investors and prospective investors are cautioned that such forward-looking statements are only projections based on current expectations and estimates. These statements involve risks and uncertainties and are based upon various assumptions. These statements involve risks and uncertainties and are based upon various assumptions. Such risks and uncertainties include, but are not limited to:

 

 

our ability to execute on our 5-Point Strategy;

 

-24-

 

 

our ability to grow our presence in the automotive/electric vehicle (“EV”), life sciences, security, industrial and international markets;

 

the possibility of future acquisitions or dispositions and the successful integration of any acquired operations;

 

the success of our strategy to diversify our business by entering markets outside the semiconductor automated test equipment (“ATE”) market;

 

indications of a change in the market cycles in the semiconductor (“semi”) market, or other markets we serve;

 

developments and trends in the semi market, including changes in the demand for semiconductors;

 

our ability to convert backlog to sales and to ship product in a timely manner;

 

the loss of any one or more of our largest customers, or a reduction in orders by a major customer;

 

the availability of materials used to manufacture our products;

 

the impact of interruptions in our supply chain caused by external factors;

 

the sufficiency of cash balances, lines of credit and net cash from operations;

 

stock price fluctuations;

 

the ability to borrow funds or raise capital to finance potential acquisitions or for working capital;

 

changes in the rate of, and timing of, capital expenditures by our customers;

 

effects of exchange rate fluctuations;

 

progress of product development programs;

 

the anticipated market for our products;

 

our failure to effectively remediate the material weakness in our internal control over financial reporting that we have identified or our failure to develop and maintain a proper and effective system of disclosure controls and internal control over financial reporting;

 

the availability of and retention of key personnel or our ability to hire personnel at anticipated costs;

 

General economic conditions both domestically and globally; and

 

other risk factors included in Part II, Item 1A – “Risk Factors” in this Report and in Part I, Item 1A - "Risk Factors" in our Annual Report on Form 10-K for the year ended December 31, 2023 (the “2023 Form 10-K”).

 

These risks and uncertainties, among others, could cause our actual future results to differ materially from those described in our forward-looking statements or from our prior results. Any forward-looking statement made by us in this Report is based only on information currently available to us and speaks to circumstances only as of the date on which it is made. We undertake no obligation to update publicly any forward-looking statements for any reason after the date of this Report to conform these statements to actual results or to changes in our expectations, except as required by law. 

 

Overview
 

This MD&A should be read in conjunction with the accompanying consolidated financial statements. In addition, please refer to the discussion of our business and markets contained in Part 1, Item 1 of our 2023 Form 10-K.

 

We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing across a wide range of markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. We have three reportable segments which are also our reporting units: Electronic Test (which includes our semiconductor test equipment, flying probe and in-circuit testers and the operations of Alfamation S.p.A., (“Alfamation”) which we acquired on March 12, 2024 as discussed further below and in Note 3 to our consolidated financial statements in this Report), Environmental Technologies (which includes our thermal test, process and storage products) and Process Technologies (which includes our induction heating and video imaging products).

 

All of our operating segments have multiple products that we design, manufacture and market to our customers. Due to a number of factors, our products have varying levels of gross margin. These factors include, for example, the amount of engineering time required to develop the product, the market or customer to which we sell the product and the level of competing products available from other suppliers. The needs of our customers ultimately determine the products that we sell in a given time period. Therefore, the mix of products sold in a given period can change significantly when compared against the prior period. As a result, our consolidated gross margin may be significantly impacted by a change in the mix of products sold in a particular period. 

 

-25-

 

Markets

 

As discussed further in Part 1, Item 1 “Markets” of our 2023 Form 10-K, we are focused on specific target markets which include automotive, defense/aerospace, industrial, life sciences, security as well as both the front-end and back-end of the semiconductor manufacturing industry. The semi market, which includes both the broader semiconductor market, as well as the more specialized ATE and wafer production sectors within the broader semiconductor market, has historically been the largest single market in which we operate. The semi market is characterized by rapid technological change, competitive pricing pressures and cyclical market patterns and is subject to periods of significant expansion or contraction in demand. Our intention is to continue diversifying our markets, our product offerings within the markets we serve and our customer base across all of our markets with the goal of reducing our dependence on any one market, product or customer. In particular, we are seeking to reduce the impact of volatility in the semi market on our results of operations.

 

The portion of our business that is derived from the semi market is substantially dependent upon the demand for ATE by semiconductor manufacturers and companies that specialize in the testing of integrated circuits (“ICs”) and, for our induction heating products, the demand for wafer production equipment. Demand for ATE or wafer production equipment is primarily driven by semiconductor manufacturers that are opening new, or expanding existing, semiconductor fabrication facilities or upgrading equipment, which in turn is dependent upon the current and anticipated market demand for ICs and products incorporating ICs. Such market demand can be the result of market expansion, development of new technologies or redesigned products to incorporate new features, or the replacement of aging equipment.

 

In the past, the semi market has been highly cyclical with recurring periods of oversupply, which often severely impact the semi market's demand for the products we manufacture and sell into the market. This cyclicality can cause wide fluctuations in both our orders and revenue and, depending on our ability to react quickly to these shifts in demand, can significantly impact our results of operations. Market cycles are difficult to predict and, because they are generally characterized by sequential periods of growth or declines in orders and revenue during each cycle, year over year comparisons of operating results may not always be as meaningful as comparisons of periods at similar points in either up or down cycles. These periods of heightened or reduced demand can shift depending on various factors impacting both our customers and the markets that they serve. In addition, during both downward and upward cycles in the semi market, in any given quarter, the trend in both our orders and revenue can be erratic. This can occur, for example, when orders are canceled or currently scheduled delivery dates are accelerated or postponed by a significant customer or when customer forecasts and general business conditions fluctuate during a quarter.

 

While a significant portion of our orders and revenue are derived from the semi market, and our operating results generally follow the overall trend in the semi market, in any given period we may experience anomalies that cause the trend in our revenue from the semi market to deviate from the overall trend in the market. We believe that these anomalies may be driven by a variety of factors within the semi market, including, for example, changing product requirements, longer periods between new product offerings by OEMs and changes in customer buying patterns. In addition, in recent periods, we have seen instances when demand within the semi market is not consistent for each of our operating segments or for any given product within a particular operating segment. This inconsistency in demand can be driven by a number of factors but, in most cases, we have found that the primary reason is unique customer-specific changes in demand for certain products driven by the needs of their customers or markets served. Recently this has become more pronounced for our sales into the wafer production sector within the broader semiconductor market due to the limited market penetration we have into this sector and the variability of orders we have experienced from the few customers we support. These shifts in market practices and customer-specific needs have had, and may continue to have, varying levels of impact on our operating results and are difficult to quantify or predict from period to period. Management has taken, and will continue to take, such actions it deems appropriate to adjust our strategies, products and operations to counter such shifts in market practices as they become evident.
 

As discussed further in Part I, Item 1 “Overview and Strategy” of our 2023 Form 10-K, although the semi market remains our largest market, as part of our strategy to grow our business, we are focused on several other key target markets where we believe our products address test and process requirements and where we believe there is significant potential for growth. These key target markets include the automotive, defense/aerospace, industrial, life sciences and security markets. We believe that these markets are usually less cyclical than the semi market. While market share statistics exist for some of these markets, due to the nature of our highly specialized product offerings in these markets, we do not expect broad market penetration in many of these markets and, therefore, do not anticipate developing meaningful market shares in most of these markets.

 

In addition, because of our limited market share, our orders and revenue in any given period in these markets do not necessarily reflect the overall trends in these markets. Consequently, we are continuing to evaluate buying patterns and opportunities for growth in these, and other, markets that may affect our performance. The level of our orders and revenue in all of the markets we serve has varied in the past, and we expect will vary significantly in the future, as we work to build our presence in our current markets and establish new markets for our products. 

 

-26-

 

Acquisition

 

As discussed further in Note 3 to our consolidated financial statements in this Report, on March 12, 2024 we entered into a stock purchase agreement to acquire all of the outstanding capital shares of Alfamation, a leading global provider of state-of-the-art test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. Alfamation was founded in 1991 and is headquartered in Milan, Italy. Alfamation also has a small sales and service subsidiary based in Suzhou City, China. Alfamation is included in our Electronic Test operating segment. The aggregate purchase price was approximately EUR 20 million comprised of EUR 18 million in cash, or $19.0 million, and 187,432 shares of our common stock valued at $2.1 million based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542,000, or $593,000 for assets delivered at closing in excess of agreed upon thresholds. On the closing date, this equated to a total purchase price of approximately $22.4 million. The liabilities assumed in connection with the acquisition included debt of approximately EUR 8.6 million, or $9.4 million. The debt assumed is discussed further in Note 10 to our consolidated financial statements in this Report.

 

In connection with the acquisition, on March 12, 2024 we entered into a lease agreement (the “Lease Agreement”) with the former owner of Alfamation who will continue to serve as the managing director of Alfamation under our ownership. The Lease Agreement will last for six years and will be automatically renewed for the same period of time unless terminated by either party. Under the terms of the Lease Agreement, Alfamation will lease warehouse and office space totaling about 51,817 square feet. Alfamation will pay a yearly lease payment of EUR 260,000 broken up into two equal payments. At the date of the signing of the Lease Agreement, the yearly lease payment equated to approximately $284,000.

 

Revenue

The following table sets forth, for the periods indicated, a breakdown of revenue by market (in thousands).

 

   

Three Months Ended

                                   

Change

                   

Change

 
   

3/31/2024

   

3/31/2023

   

$

   

%

   

12/31/2023

   

$

   

%

 

Revenue

                                                                               

Semi

  $ 14,967       50.2 %   $ 17,683       55.4 %   $ (2,716 )     -15.4 %   $ 10,743       38.5 %   $ 4,224       39.3 %

Industrial

    4,187       14.0 %     3,137       9.8 %     1,050       33.5 %     5,911       21.2 %     (1,724 )     -29.2 %

Auto/EV

    3,958       13.3 %     2,597       8.1 %     1,361       52.4 %     3,981       14.3 %     (23 )     -0.6 %

Life Sciences

    653       2.2 %     1,513       4.8 %     (860 )     -56.8 %     878       3.1 %     (225 )     -25.6 %

Defense/Aero

    3,239       10.9 %     2,839       8.9 %     400       14.1 %     2,416       8.7 %     823       34.1 %

Security

    541       1.8 %     966       3.0 %     (425 )     -44.0 %     819       3.0 %     (278 )     -33.9 %

Other

    2,279       7.6 %     3,184       10.0 %     (905 )     -28.4 %     3,136       11.2 %     (857 )     -27.3 %
    $ 29,824       100.0 %   $ 31,919       100.0 %   $ (2,095 )     -6.6 %   $ 27,884       100.0 %   $ 1,940       7.0 %

 

Total consolidated revenue for the three months ended March 31, 2024 was $29.8 million compared to $31.9 million for the same period in 2023 and $27.9 million for the three months ended December 31, 2023. The decrease in revenue for the first quarter of 2024 as compared to the same period in 2023 primarily reflects weak demand from semi, which was partially offset by an increase in revenue from the industrial and auto/EV markets. Revenue from the auto/EV market in the first quarter of 2024 includes $1.4 million from Alfamation which we acquired on March 12, 2024, as previously discussed. As discussed in the Overview, the semi market is highly cyclical resulting in significant swings in demand when period to period comparisons are to different points in a given cycle. As compared to the fourth quarter of 2023, the first quarter of 2024 reflects improved demand from semi, although this was partially offset by weakness from our customers in the industrial market.  

 

Orders and Backlog

We use orders and backlog as key performance metrics to analyze and measure our financial performance and results of operations. We define orders as purchase orders that we have accepted from our customers. Orders are recorded based on the date received and accepted by us. We believe tracking orders is useful in planning for future production needs and staffing levels and we use information about the level of our orders to make decisions about resource allocation, including appropriate levels of inventory purchases and the balance of inventory we carry at any given time. Another important operational measure used is backlog. Backlog is a common measurement used in industries with extended lead times for order fulfillment, like those in which we operate. Backlog at any given date represents the amount of revenue that we expect to realize for unfilled orders received as of that date. We believe backlog is useful and use this information for similar reasons to those detailed above for orders. The majority of our backlog at any given time is expected to be fulfilled within the next twelve months. Depending on the terms of the purchase orders we have accepted, customers may have the ability to cancel an order or accelerate or postpone currently scheduled delivery dates. In some cases, we may have the ability to charge a cancellation fee if a purchase order we have accepted is later cancelled by a customer. Given that both orders and backlog are operational measures and our methodology for calculating orders and backlog do not meet the definition of a non-GAAP measure, as that term is defined by the SEC, a quantitative reconciliation for each is not required or provided.

 

-27-

 

The following table sets forth, for the periods indicated, a breakdown of the orders received by market (in thousands).

 

   

Three Months Ended

 
                                   

Change

                   

Change

 
   

3/31/2024

   

3/31/2023

   

$

   

%

   

12/31/2023

   

$

   

%

 

Orders

                                                                               

Semi

  $ 10,253       45.0 %   $ 18,346       59.5 %   $ (8,093 )     -44.1 %   $ 13,295       48.3 %   $ (3,042 )     -22.9 %

Industrial

    3,093       13.5 %     4,142       13.5 %     (1,049 )     -25.3 %     3,445       12.5 %     (352 )     -10.2 %

Auto/EV

    4,041       17.7 %     2,044       6.6 %     1,997       97.7 %     1,822       6.6 %     2,219       121.8 %

Life Sciences

    698       3.1 %     1,936       6.3 %     (1,238 )     -63.9 %     877       3.2 %     (179 )     -20.4 %

Defense/Aero

    2,684       11.8 %     1,977       6.4 %     707       35.8 %     5,161       18.8 %     (2,477 )     -48.0 %

Security

    40       0.2 %     212       0.7 %     (172 )     -81.1 %     65       0.2 %     (25 )     -38.5 %

Other

    1,990       8.7 %     2,167       7.0 %     (177 )     -8.2 %     2,858       10.4 %     (868 )     -30.4 %
    $ 22,799       100.0 %   $ 30,824       100.0 %   $ (8,025 )     -26.0 %   $ 27,523       100.0 %   $ (4,724 )     -17.2 %

 

Total consolidated orders for the three months ended March 31, 2024 were $22.8 million compared to $30.8 million for the same period in 2023 and $27.5 million for the three months ended December 31, 2023. The decreases primarily represent the aforementioned decline in demand from semi in the first quarter of 2024 as compared to both the first and fourth quarters of 2023. As previously discussed, the semi market continues to be in a period of reduced demand which we believe primarily reflects the typical cyclicality of this industry. In addition, in the first quarter of 2024, we experienced declines in several of the other markets we serve, which we believe primarily reflects the timing of receipt of orders. Orders are often placed by our customers in large blocks with the associated delivery schedules allocated in smaller amounts over several quarters which can result in significant variation in total order levels from quarter to quarter. Our orders from the auto/EV market for the first quarter of 2024 include $1.8 million from Alfamation.

 

At March 31, 2024, our backlog of unfilled orders for all products was approximately $55.5 million compared with approximately $45.7 million at March 31, 2023 and $40.1 million at December 31, 2023.  Our backlog at March 31, 2024 includes $22.8 million of backlog for Alfamation. Our backlog includes customer orders that we have accepted, substantially all of which we expect to deliver in 2024. While backlog is calculated on the basis of firm purchase orders, a customer may cancel an order or accelerate or postpone currently scheduled delivery dates. Our backlog may be affected by the tendency of customers to rely on short lead times available from suppliers, including us, in periods of depressed demand. In periods of increased demand, there is a tendency towards longer lead times that has the effect of increasing backlog. As a result, our backlog at a particular date is not necessarily indicative of sales for any future period.

 

Israel-Hamas War, War in Ukraine and Global Supply Chain Constraints 

 

In early October 2023, Hamas attacked Israel and Israel formally declared war in response to the attack. The conflict is ongoing, and it is unclear when it might end. Ambrell has a sole source supplier of capacitors used in certain of our induction heating products that is located in Israel. This supplier is the sole source supplier of capacitors for numerous induction companies, and currently there are no viable alternatives available. We have been in frequent contact with our supplier since the conflict with Hamas began. We maintain a two-to-three month safety stock on these items. Our supplier has indicated that they have large stock available at more than one facility in Israel, so they believe they have redundancies in place that will help ensure that the supply chain to their customers is uninterrupted. We continue to monitor the situation closely and are staying in close contact with our supplier. However, there can be no assurance that the situation will not worsen which could impact our ability to ship certain of our induction heating products which could have a material impact on our future results of operations.

 

The ongoing war between Russia and Ukraine continues to contribute to global inflationary pressures and the availability of certain raw materials produced in that region, further exacerbating global supply chain challenges that emerged after the onset of the COVID-19 pandemic. Acculogic purchases certain material from a key sole-source supplier in Belarus, which is bordered by Russia to the east and northeast and Ukraine to the south. At present, we are still receiving shipments from this supplier, and we estimate that we have a six-to-nine-month supply of these parts that we are maintaining. We are currently in the process of qualifying an alternate supplier for these parts. We received prototype sample parts from the alternate supplier which we are now evaluating. We expect to complete this evaluation by the third quarter of 2024.

 

In addition, while the supply chain and logistics challenges that we encountered throughout 2022 have eased and conditions appear to have stabilized, uncertainty in the global trade environment and the possibility of future global health or other crises remain. As a result, we expect that we may continue to experience increased prices, lack of availability and logistics delays from time to time for the foreseeable future. The actions we have taken and are continuing to take to mitigate these risks include qualifying new vendors as alternate sources in our supply chain, increasing our inventory of raw materials and ordering further in advance of when we expect to need materials than has been our practice in the past. We have also increased the prices that we charge our customers, where appropriate, and continue to work with our customers to find alternate options for the shipment of products where they control aspects of the logistics process. However, the environment in which we operate is dynamic and shifts rapidly at times, and the success of our efforts to mitigate and address the impacts on our business may not be successful. As a result, we could see increases in our costs or reduced revenues which would impact the level of our earnings in future periods.

 

Please refer to Part 1, Item 1A of our 2023 Form 10-K for further discussion of the risks associated with our business operations, including risks associated with foreign operations.

 

-28-

 

Results of Operations

 

The results of operations for our three operating segments are generally affected by the same factors described in the Overview section above. Separate discussions and analyses for each segment would be repetitive. The discussion and analysis that follows, therefore, is presented on a consolidated basis and includes discussion of factors unique to a particular operating segment where significant to an understanding of that segment. 

 

Three Months Ended March 31, 2024 Compared to Three Months Ended March 31, 2023

Revenue. Revenue was $29.8 million for the three months ended March 31, 2024 compared to $31.9 million for the same period in 2023, a decrease of $2.1 million, or 7%. We believe the decrease in our revenue during the first quarter of 2024 reflects the factors previously discussed in the Overview section.
 

Gross Margin. Our consolidated gross margin was 44% of revenue for the three months ended March 31, 2024 as compared to 47% of revenue for the same period in 2023. The decrease in our gross margin primarily reflects that our fixed operating costs were not as fully absorbed by the lower revenue levels in the first quarter of 2024 as compared to the same period in 2023. To a lesser extent, the absolute dollar value of our fixed operating costs increased $524,000 as compared to the same period in 2023. Alfamation accounted for approximately $288,000 of our fixed operating costs during the first quarter of 2024. The remainder of the increase in our fixed operating costs primarily reflects higher salary and benefits expense.

Selling Expense. Selling expense was $4.6 million for the three months ended March 31, 2024 compared to $4.5 million for the same period in 2023, an increase of $135,000 or 3%. Alfamation accounted for approximately $216,000 of our selling expense during the first quarter of 2024. For the balance of our business, declines in commission expense reflecting the lower revenue levels in 2024 were partially offset by increased salary and benefits expense.

Engineering and Product Development Expense. Engineering and product development expense was $2.0 million for the three months ended March 31, 2024 compared to $1.9 million for the same period in 2023, an increase of $78,000 or 4%. Alfamation had relatively insignificant engineering expense for the period from March 13 to March 31, 2024. In the balance of our business, there were increases in salary and benefits expense and material used in product development projects in the first quarter of 2024 as compared to the same period in 2023.

 

General and Administrative Expense. General and administrative expense was $6.0 million for the three months ended March 31, 2024 compared to $5.2 million for the same period in 2023 an increase of $837,000, or 16%. Alfamation accounted for approximately $231,000 of our general and administrative expense during the first quarter of 2024. The increase in the balance of our business primarily represents higher costs associated with corporate development activities and compliance with regulatory requirements related to our status as a public company and our transition to an accelerated filer.

 

Income Tax Expense. For the three months ended March 31, 2024, we recorded income tax expense of $125,000 compared to income tax expense of $577,000 for the same period in 2023. Our effective tax rate was 16% for the three months ended March 31, 2024 compared to 17% for the same period in 2023. On a quarterly basis, we record income tax expense or benefit based on the expected annualized effective tax rate for the various taxing jurisdictions in which we operate our businesses.

 

Liquidity and Capital Resources

As discussed more fully in the Overview, our business and results of operations are substantially dependent upon the demand for ATE by semiconductor manufacturers and companies that specialize in the testing of ICs. The cyclical and volatile nature of demand for ATE makes estimates of future revenues, results of operations and net cash flows difficult.

 

Our primary historical source of liquidity and capital resources has been cash flow generated by our operations. In 2021, we also utilized our Credit Facility, which is discussed below, to fund our acquisitions. We manage our businesses to maximize operating cash flows as our primary source of liquidity for our short-term cash requirements, as discussed below. We use cash to fund growth in our operating assets, for new product research and development, for acquisitions and for stock repurchases. We currently anticipate that any additional long-term cash requirements related to our strategy would be funded through a combination of our cash and cash equivalents, our Credit Facility or by issuing equity.

 

Proceeds from Sale of Common Stock

 

On May 11, 2023, we entered into an At-the-Market Issuance Sales Agreement (the "Sales Agreement") pursuant to which we issued and sold 921,797 shares of our common stock having an aggregate offering price of $20.0 million between May 11, 2023 and May 31, 2023. We received net proceeds from the sale of these shares of $19.2 million after payment of commissions of 3.0% of the gross proceeds and other fees related to the sale of these shares.

 

-29-

 

Credit Facility

 

As discussed in Note 10 to our consolidated financial statements in this Report, on October 15, 2021, we entered into the Loan Agreement with M&T. The Loan Agreement includes a $25 million non-revolving delayed draw term note (the “Term Note”) and a $10 million revolving credit facility (the “Revolving Facility and together with the Term Note, the “Credit Facility”). The Credit Facility had a five-year contract period that began on the Closing Date and expired on October 15, 2026, and draws under the Term Note were permissible for two years.

 

On September 20, 2022, we further amended the Loan Agreement by entering into a Third Amendment to Amended and Restated Loan and Security Agreement (the Loan Agreement as amended by the Third Amendment, the “Third Amended Loan Agreement”) and the Third Amended and Restated Delayed Draw Term Note 1A. Under the Third Amended Loan Agreement, the maximum loan amount that we may borrow under the Term Note increased from $25 million to $50.5 million, which raises the available funding at March 31, 2024 to $30 million. On May 2, 2024 we further amended our Third Amended Loan Agreement by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we may request advances under the Term Note is extended until May 2, 2026, and the Term Note and revolving credit facility maturity date is extended from September 19, 2027 to May 2, 2031. At March 31, 2024, we had not borrowed any amounts under the $10 million Revolving Facility. Our borrowings under the Term Note are discussed below and occurred prior to entering into the Amended Loan Agreement. The principal balance of the Revolving Facility and the principal balance of any amount drawn under the Term Note accrues interest based on the Secured Overnight Financing Rate or a bank-defined base rate plus an applicable margin, depending on leverage. The Amended Loan Agreement includes customary affirmative, negative and financial covenants, including a maximum ratio of consolidated funded debt to consolidated EBITDA of not more than 3.0 to 1.0 and a fixed charge coverage ratio of not less than 1.25 to 1.0. Our obligations under the Amended Loan Agreement are secured by liens on substantially all of our tangible and intangible assets. At March 31, 2024, we were in compliance with all of the covenants included in the Credit Facility.

 

On October 28, 2021, we drew $12 million under the Term Note to finance the acquisition of Videology. We also entered into an interest rate swap agreement with M&T as of this date which is designed to protect us against fluctuations in interest rates during the five-year repayment and amortization period. As a result, the annual interest rate we expect to pay for this draw under the Term Note is fixed at approximately 3.2% based on current leverage.

 

On December 29, 2021, we drew $8.5 million under the Term Note to finance the acquisition of Acculogic. We did not enter into an interest rate swap agreement with M&T related to this draw. The annual interest rate we expect to pay for this draw under the Term Note is variable. At March 31, 2024, it was approximately 7.4% based on current leverage. 

 

Alfamation Debt

 

At March 31, 2024, the total debt assumed in connection with the acquisition of Alfamation was valued at $9.4 million. The acquisition is discussed further in Note 3 to our consolidated financial statements in this Report and the debt is discussed further in Note 10 to our consolidated financial statements in this Report. This debt is comprised of both fixed and variable rate bank issued term loans as well as $2.1 million of short-term variable rate financing backed by Alfamation’s accounts receivable. This debt is spread across a number of different institutions with monthly, quarterly or half-yearly repayment schedules. The average interest rate being paid at March 31, 2024 was 1.9% for fixed rate debt and 5.0% for variable rate debt. The average rate for total debt at March 31, 2024 was 4.0%.

 

Total interest expense from all of our debt for the three months ended March 31, 2024 and 2023 was $140,000 and $182,000, respectively.

Liquidity

Our cash and cash equivalents and working capital were as follows (in thousands):

 

   

March 31,

2024

   

December 31,

2023

 

Cash and cash equivalents

  $ 27,331     $ 45,260  

Working capital

  $ 45,736     $ 61,479  

 

As of March 31, 2024, $6.9 million, or 25% of our cash and cash equivalents was held by our foreign subsidiaries. We currently expect our cash and cash equivalents, in combination with the borrowing capacity available under our Revolving Facility and the anticipated net cash to be provided by our operations in the next twelve months to be sufficient to support our short-term working capital requirements and other corporate requirements. Our Revolving Facility is discussed in Note 10 to our consolidated financial statements in this Report.

 

Our material short-term cash requirements include payments due under our various lease agreements, recurring payroll and benefits obligations to our employees, purchase commitments for materials that we use in the products we sell and principal and interest payments on our debt. We anticipate making investments in our business in the next twelve months including hiring of additional staff, updates to our systems and investments related to our geographic and market expansion efforts. We estimate that our minimum short-term working capital requirements currently range between $8.0 million and $10.0 million. We expect our current cash and cash equivalents, in combination with the borrowing capacity available under our Revolving Facility and the anticipated net cash to be provided by our operations to be sufficient to support these additional investments as well as our current short-term cash requirements.

 

Our current strategy for growth includes pursuing acquisition opportunities for complementary businesses, technologies or products. As previously discussed, we currently anticipate that any additional long-term cash requirements related to our strategy would be funded through a combination of our cash and cash equivalents, the remaining availability under the Term Note or by issuing equity. The borrowing availability under the Term Note was expanded in September 2022 as discussed above and in Note 10 to our consolidated financial statements in this Report.

 

-30-

 

Cash Flows

 

Operating Activities. For the three months ended March 31, 2024, we recorded net earnings of $662,000. Net cash provided by operations during this period was $2.1 million. During the three months ended March 31, 2024, we had non-cash charges of $1.3 million for depreciation and amortization which included $403,000 of amortization related to our ROU assets. Our operating lease liabilities declined $447,000 during this same period. During the three months ended March 31, 2024, we recorded $349,000 for amortization of deferred compensation expense related to stock-based awards. During the first quarter of 2024, accounts receivable increased $982,000, inventories increased $396,000 and prepaid expenses and other current assets declined $508,000. During this same period, accrued wages and benefits increased $939,000 while customer deposits and deferred revenue (including deferred revenue, net of current portion) declined $782,000. All of these fluctuations represent normal variations due to varying timing of payments, receipt of cash from customers and normal accruals that are standard in our business operations.

 

Investing Activities. During the three months ended March 31, 2024, we paid $18.9 million in net cash for the acquisition of Alfamation which is discussed in more detail in Note 3 to our consolidated financial statements in this Report. Purchases of property and equipment were $340,000, during this period, representing capital expenditures in the normal course of business. We have no significant commitments for capital expenditures for the balance of 2024; however, depending upon changes in market demand or manufacturing and sales strategies, we may make such purchases or investments as we deem necessary and appropriate. These additional cash requirements would be funded by our cash and cash equivalents, anticipated net cash to be provided by operations and our revolving credit facility.

 

Financing Activities. During the three months ended March 31, 2024, we had borrowings under Alfamation’s short-term borrowing arrangements of $273,000 and made principal payments on our long-term debt totaling $1.2 million. There were no other significant amounts used by or received from financing activities during the quarter.

 

New or Recently Adopted Accounting Standards

 

See the Notes to our consolidated financial statements in this Report for information concerning the implementation and impact of new or recently adopted accounting standards.

 

Critical Accounting Estimates

The preparation of consolidated financial statements in conformity with U.S. GAAP requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenue, expenses and related disclosure of contingent assets and liabilities. On an on-going basis, we evaluate our estimates, including those related to inventories, long-lived assets, goodwill, identifiable intangibles, contingent consideration liabilities and deferred income tax valuation allowances. We base our estimates on historical experience and on appropriate and customary assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Some of these accounting estimates and assumptions are particularly sensitive because of their significance to our consolidated financial statements and because of the possibility that future events affecting them may differ markedly from what had been assumed when the financial statements were prepared. As of March 31, 2024, there have been no significant changes to the accounting estimates that we have deemed critical. Our critical accounting estimates are more fully described in our 2023 Form 10-K.

 

Off -Balance Sheet Arrangements

 

There were no off-balance sheet arrangements during the three months ended March 31, 2024 that have or are reasonably likely to have, a current or future effect on our financial condition, changes in financial condition, revenue or expenses, results of operations, liquidity, capital expenditures or capital resources that is material to our interests.

 

Item 3.

QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

 

Market Risks

 

We are exposed to certain market risks as part of our ongoing business operations, including concentration of credit risk and risks from foreign currency exchange rate and interest rate fluctuations. These risks could adversely affect our consolidated financial position, results of operations or cash flows. We manage these risks through ongoing operating and monitoring activities.

 

-31-

 

Concentration of Credit Risk. Financial instruments which potentially subject us to concentrations of credit risk consist principally of cash equivalents and accounts receivable. Our domestic cash equivalents consist primarily of money market funds invested in U.S. Treasuries and government agencies. At March 31, 2024, we also had approximately $6.9 million, or 25% of our cash that was held by our foreign subsidiaries in accounts at local banks. Concentrations of credit risk with respect to accounts receivable are limited due to the large number of geographically dispersed customers. We grant credit to customers and generally require no collateral. Although we do not currently foresee a significant credit risk associated with the outstanding accounts receivable, repayment is dependent upon the financial stability of our customers. To minimize our risk, we perform ongoing credit evaluations of our customers' financial condition. There were no customers who accounted for more than 10% of our accounts receivable balance as of March 31, 2024.

 

Exchange Rate Risk Management. We have operations in several foreign countries and subsidiaries who report their results in a functional currency other than the U.S. dollar but invoice the majority of their customers in U.S. dollars. For the three months ended March 31, 2024 and 2023, sales transacted in foreign currencies accounted for approximately 22% and 14%, respectively of our consolidated revenue. This exposes us to the risk of incurring both realized and unrealized exchange gains and losses. We do not currently use derivatives to manage this risk. The most significant risk we face is related to accounts receivable that are denominated in U.S. dollars for transactions that are recorded in the local currency of the operation. At March 31, 2024, we had approximately 15% of our accounts receivable denominated in U.S. dollars but recorded in the local currency of the operation. We do maintain bank accounts in most of our foreign locations that can receive and hold U.S. dollars.

 

Interest Rate Risk Management. We are exposed to potential losses due to changes in interest rates. Our interest rate exposure is primarily related to short-term and long-term debt where the interest rates are variable. At March 31, 2024, we had an aggregate of $20.4 million in short-term and long-term debt, of which approximately 55% had variable rates, including $4.8 million under the Term Note portion of the Credit Facility. 

 

Item 4.

CONTROLS AND PROCEDURES

 

Evaluation of Disclosure Controls and Procedures

We maintain disclosure controls and procedures, as such term is defined in Rule 13a-15(e) under the Exchange Act of 1934, as amended, (the “Exchange Act”). Because there are inherent limitations in all control systems, a control system, no matter how well conceived and operated, can provide only reasonable, as opposed to absolute, assurance that the objectives of the control system are met. These inherent limitations include the realities that judgments in decision-making can be faulty, and that breakdowns can occur because of simple error or mistake. Additionally, controls can be circumvented by the individual acts of some persons, by collusion of two or more people, or by management override of the control. Further, the design of a control system must reflect the fact that there are resource constraints, and the benefits of controls must be considered relative to their costs. Our management, including the CEO and CFO, does not expect that our disclosure controls and procedures or our internal control over financial reporting will prevent all error and all fraud. Because of the inherent limitations in a cost-effective control system, misstatements due to error or fraud may occur and not be detected. Accordingly, our management has designed the disclosure controls and procedures to provide reasonable assurance that the objectives of the control system were met.

 

CEO/CFO Conclusions about the Effectiveness of the Disclosure Controls and Procedures

 

As required by Rule 13a-15(b) of the Exchange Act, inTEST management, including our CEO and CFO, conducted an evaluation as of the end of the period covered by this Report, of the effectiveness of our disclosure controls and procedures. Based on that evaluation, our CEO and CFO concluded that, as of the end of the period covered by this Report, our disclosure controls and procedures were not effective at the reasonable assurance level.

 

Our Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were not effective as of March 31, 2024 because of the material weakness in our internal control over financial reporting described below. A material weakness is a deficiency, or a combination of deficiencies, in internal control over financial reporting, such that there is a reasonable possibility that a material misstatement of our annual or interim financial statements will not be prevented or detected in a timely basis. The identified material weakness contributed to the restatements of our financial statements for the three and nine months ended September 30, 2023.

 

Management has determined that the Company had the following material weakness in its internal control over financial reporting:

 

 

We did not appropriately design and implement controls over 1) the identification of and 2) the application of appropriate U.S. GAAP for transactions related to the procurement and sale of discontinued material/components purchased on behalf of customers where the associated materials/components were still physically located with us and the materials/components are expected to be applied to future product orders for these customers.

 

This material weakness contributed to material misstatements in our consolidated financial statements for the three and nine months ended September 30, 2023, which have been corrected and restated in our Amendment No. 1 to our Quarterly Report on Form 10-Q for the period ended September 30, 2023. Accordingly, management has concluded that this control deficiency constitutes a material weakness.

 

-32-

 

Remediation Efforts

 

Management is developing a remediation plan to address the material weakness discussed above. Remediation will not occur until the plan is implemented and there has been appropriate time for us to conclude through testing that the control operates effectively.

 

Changes in Internal Control Over Financial Reporting

 

As described above, we are in the process of implementing changes to our internal control over financial reporting to remediate the material weaknesses described herein. Other that these changes, there has been no change in our internal control over financial reporting (as defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) that occurred during the period covered by this Report that has materially affected, or is reasonably likely to materially affect, our internal control over financial reporting. 

 

 

PART II.  OTHER INFORMATION

 

Item 1.

Legal Proceedings

 

From time to time we may be a party to legal proceedings occurring in the ordinary course of business. We are not currently involved in any material legal proceedings.

 

Item 1A. Risk Factors

 

Information regarding the primary risks and uncertainties that could materially and adversely affect our future performance or could cause actual results to differ materially from those expressed or implied in our forward-looking statements, appears in Part I, Item 1A - "Risk Factors" of our 2023 Form 10-K filed with the Securities and Exchange Commission on March 27, 2024. There have been no material changes from the risk factors set forth in our 2023 Form 10-K.

 

Item 2.

Unregistered Sales of Equity Securities and Use of Proceeds

 

The following table provides information with respect to shares of common stock withheld by the Company for net settlement of restricted stock awards for the first quarter of 2024:

 

Period

 

Total

Number

of Shares

Purchased

   

Average

Price Paid

Per Share

   

Total

Number

of Shares

Purchased

as Part of

Publicly

Announced

Plans

or Programs

   

Approximate

Dollar

Value of

Shares

That May

Yet Be

Purchased

Under

the Plans or

Programs

 

January 1-31

    -     $ -       -       -  

February 1-29

    -     $ -       -       -  

March 1-31

    2,757 (1)   $ 11.16       -       -  

Total

    2,757     $ 11.16       -          

 

 

(1)

Shares withheld to cover tax withholding obligations under the net settlement provisions of our restricted stock awards.

 

On March 12, 2024 the Company entered into a stock purchase agreement (the “Purchase Agreement”) by and among inTEST Italy, Inc., a wholly owned subsidiary of the Company (“Buyer”), Mauro Arigossi (“Arigossi”), and Elettra S.S., a company incorporated under the Laws of Italy (“Elettra”, and together with Arigossi, each a “Seller” and collectively, the “Sellers”). In accordance with the Purchase Agreement the Sellers, being the sole legal and beneficial owners of all of the outstanding capital shares of Alfamation S.p.A., an Italian joint-stock company (the “Alfamation”), agreed to sell and the Buyer agreed to purchase all of the  outstanding capital shares of Alfamation. As part of the consideration paid under the Purchase Agreement, the Sellers was issued 187,432 shares of common stock of the Company, par value $0.01 (the “Shares”). The Shares were issued pursuant to an exemption from registration under Section 4(a)(2) of the Securities Act of 1933. For further information on the acquisition please refer to Note 3 to our consolidated financial statements in this Report.

 

Item 3.

Defaults Upon Senior Securities

 

None.

 

Item 4.

Mine Safety Disclosures

 

Not applicable.

 

-33-

 

Item 5.

Other Information

 

During the first quarter ended March 31, 2024, none of the Company's directors or officers (as defined in Section 16 of the Securities Exchange Act of 1934) adopted or terminated a "Rule 10b5-1 trading arrangement" or a "non-Rule 10b5-1 trading arrangement," as each term is defined in Item 408(a) of Regulation S-K of the Securities Exchange Act of 1934.

 

Item 6.

Exhibits

 

10.1

Separation Agreement, dated February 5, 2024, between inTEST Corporation and Scott Nolen. (1)

10.2*

Stock Purchase Agreement, by and among inTEST Corporation, inTEST Italy, Inc., Mauro Arigossi, and Elettra S.S., dated as of March 12, 2024. (2)

10.3

Lease Agreement, by and between Alfamation S.p.A. and Elettra Real Estate S.r.l, dates as of March 12, 2024. (2)

31.1

Certification of Chief Executive Officer pursuant to Rule 13a-14(a).

31.2

Certification of Chief Financial Officer pursuant to Rule 13a-14(a).

32.1

Certification of Chief Executive Officer furnished pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.

32.2

Certification of Chief Financial Officer furnished pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.

101.INS

Inline XBRL Taxonomy Instance Document

101.SCH

Inline XBRL Taxonomy Extension Schema Document

101.CAL

Inline XBRL Taxonomy Extension Calculation Linkbase Document

101.DEF

Inline XBRL Taxonomy Extension Definition Linkbase Document

101.LAB

Inline XBRL Taxonomy Extension Label Linkbase Document

101.PRE

Inline XBRL Taxonomy Extension Presentation Linkbase Document

104

Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101).

   

(1)

Previously filed by the Company as an exhibit to the Company’s Current Report on Form 8-K dated February 7, 2024, File No. 001-36117, filed February 7, 2024, and incorporated herein by reference.

(2)

Previously filed by the Company as an exhibit to the Company’s Current Report on Form 8-K dated March 12, 2024, File No. 001-36117, filed March 12, 2024, and incorporated herein by reference.

*

Certain schedules of this exhibit have been omitted pursuant to Item 601(a)(5) of Regulation S-K. The Company agrees to furnish supplementally to the Securities and Exchange Commission or its staff a copy of the omitted schedules upon request.

 

-34-

 

Signatures

 

Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.

 

   

inTEST Corporation

     
     
     

Date:

May 9, 2024

/s/ Richard N. Grant, Jr.

   

Richard N. Grant, Jr.

    President and Chief Executive Officer
   

(Principal Executive Officer) 

     
     

Date:

May 9, 2024

/s/ Duncan Gilmour

   

Duncan Gilmour

    Chief Financial Officer, Treasurer and Secretary
   

(Principal Financial Officer)

 

-35-
EX-31.1 2 ex_668426.htm EXHIBIT 31.1 ex_668426.htm

 

EXHIBIT 31.1

 

 

CERTIFICATION

 

 

 

I, Richard N. Grant, Jr., certify that:

 

1.    I have reviewed this quarterly report on Form 10-Q of inTEST Corporation;

 

2.    Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3.    Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4.    The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a)  Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b)  Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c)  Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d)  Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and

 

5.    The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):

 

(a)  All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and

 

(b)  Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.

 

 

 

 

Date: May 9, 2024

 

 

 

/s/ Richard N. Grant, Jr.
Richard N. Grant, Jr.
President and Chief Executive Officer

 
EX-31.2 3 ex_668427.htm EXHIBIT 31.2 ex_668427.htm

 

EXHIBIT 31.2

 

CERTIFICATION

 

 

 

I, Duncan Gilmour, certify that:

 

1.    I have reviewed this quarterly report on Form 10-Q of inTEST Corporation;

 

2.    Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;

 

3.    Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;

 

4.    The registrant's other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:

 

(a)  Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;

 

(b)  Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;

 

(c)  Evaluated the effectiveness of the registrant's disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and

 

(d)  Disclosed in this report any change in the registrant's internal control over financial reporting that occurred during the registrant's most recent fiscal quarter (the registrant's fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant's internal control over financial reporting; and

 

5.    The registrant's other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant's auditors and the audit committee of the registrant's board of directors (or persons performing the equivalent functions):

 

(a)  All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant's ability to record, process, summarize and report financial information; and

 

(b)  Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant's internal control over financial reporting.

 

 

 

Date: May 9, 2024

 

 

 

/s/Duncan Gilmour
Duncan Gilmour
Chief Financial Officer, Treasurer and Secretary

 
EX-32.1 4 ex_668428.htm EXHIBIT 32.1 ex_668428.htm

 

EXHIBIT 32.1

 

 

inTEST CORPORATION


CERTIFICATION PURSUANT TO
18 U.S.C. SECTION 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

 

 

In connection with the Quarterly Report of inTEST Corporation (the "Company") on Form 10-Q for the period ended March 31, 2024 as filed with the Securities and Exchange Commission on the date hereof (the "Report"), I, Richard N. Grant, Jr., President and Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

(1)         The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

(2)         The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.




Date:         May 9, 2024

 

 

 

/s/ Richard N. Grant, Jr.
Richard N. Grant, Jr.
President and Chief Executive Officer

 
EX-32.2 5 ex_668429.htm EXHIBIT 32.2 ex_668429.htm

 

EXHIBIT 32.2

 

 

 

inTEST CORPORATION


CERTIFICATION PURSUANT TO
18 U.S.C. SECTION 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002

 

 

 

In connection with the Quarterly Report of inTEST Corporation (the "Company") on Form 10-Q for the period ended March 31, 2024 as filed with the Securities and Exchange Commission on the date hereof (the "Report"), I, Duncan Gilmour, Chief Financial Officer, Treasurer and Secretary of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:

(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and

(2) The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.




Date:         May 9, 2024

 

 

 

/s/ Duncan Gilmour
Duncan Gilmour
Chief Financial Officer, Treasurer and Secretary

 
EX-101.SCH 6 intt-20240331.xsd XBRL TAXONOMY EXTENSION SCHEMA 000 - Document - Document And Entity Information link:calculationLink link:definitionLink link:presentationLink 001 - Statement - Consolidated Balance Sheets (Current Period Unaudited) link:calculationLink link:definitionLink link:presentationLink 002 - Statement - Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) link:calculationLink link:definitionLink link:presentationLink 003 - Statement - Consolidated Statements of Operations (Unaudited) link:calculationLink link:definitionLink link:presentationLink 004 - Statement - Consolidated Statements of Comprehensive Earnings (Unaudited) link:calculationLink link:definitionLink link:presentationLink 005 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited) link:calculationLink link:definitionLink link:presentationLink 006 - Statement - Consolidated Statements of Cash Flows (Unaudited) link:calculationLink link:definitionLink link:presentationLink 007 - Disclosure - Note 1 - Nature of Operations link:calculationLink link:definitionLink link:presentationLink 008 - Disclosure - Note 2 - Summary of Significant Accounting Policies link:calculationLink link:definitionLink link:presentationLink 009 - Disclosure - Note 3 - Acquisition link:calculationLink link:definitionLink link:presentationLink 010 - Disclosure - Note 4 - Fair Value Measurements link:calculationLink link:definitionLink link:presentationLink 011 - Disclosure - Note 5 - Goodwill and Intangible Assets link:calculationLink link:definitionLink link:presentationLink 012 - Disclosure - Note 6 - Revenue From Contracts With Customers link:calculationLink link:definitionLink link:presentationLink 013 - Disclosure - Note 7 - Major Customers link:calculationLink link:definitionLink link:presentationLink 014 - Disclosure - Note 8 - Inventories link:calculationLink link:definitionLink link:presentationLink 015 - Disclosure - Note 9 - Leases link:calculationLink link:definitionLink link:presentationLink 016 - Disclosure - Note 10 - Debt link:calculationLink link:definitionLink link:presentationLink 017 - Disclosure - Note 11 - Stock-based Compensation Plan link:calculationLink link:definitionLink link:presentationLink 018 - Disclosure - Note 12 - Employee Stock Purchase Plan link:calculationLink link:definitionLink link:presentationLink 019 - Disclosure - Note 13 - Employee Benefit Plans link:calculationLink link:definitionLink link:presentationLink 020 - Disclosure - Note 14 - Segment Information link:calculationLink link:definitionLink link:presentationLink 021 - Disclosure - Note 15 - Subsequent Event link:calculationLink link:definitionLink link:presentationLink 995468 - Disclosure - Significant Accounting Policies (Policies) link:calculationLink link:definitionLink link:presentationLink 995469 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Tables) link:calculationLink link:definitionLink link:presentationLink 995470 - Disclosure - Note 3 - Acquisition (Tables) link:calculationLink link:definitionLink link:presentationLink 995471 - Disclosure - Note 4 - Fair Value Measurements (Tables) link:calculationLink link:definitionLink link:presentationLink 995472 - Disclosure - Note 5 - Goodwill and Intangible Assets (Tables) link:calculationLink link:definitionLink link:presentationLink 995473 - Disclosure - Note 6 - Revenue From Contracts With Customers (Tables) link:calculationLink link:definitionLink link:presentationLink 995474 - Disclosure - Note 8 - Inventories (Tables) link:calculationLink link:definitionLink link:presentationLink 995475 - Disclosure - Note 9 - Leases (Tables) link:calculationLink link:definitionLink link:presentationLink 995476 - Disclosure - Note 10 - Debt (Tables) link:calculationLink link:definitionLink link:presentationLink 995477 - Disclosure - Note 11 - Stock-based Compensation Plan (Tables) link:calculationLink link:definitionLink link:presentationLink 995478 - Disclosure - Note 14 - Segment Information (Tables) link:calculationLink link:definitionLink link:presentationLink 995479 - Disclosure - Note 1 - Nature of Operations (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995480 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995481 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details) link:calculationLink link:definitionLink link:presentationLink 995482 - Disclosure - Note 3 - Acquisition (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995483 - Disclosure - Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details) link:calculationLink link:definitionLink link:presentationLink 995484 - Disclosure - Note 3 - Acquisition - Intangible Assets (Details) link:calculationLink link:definitionLink link:presentationLink 995485 - Disclosure - Note 3 - Acquisition - Proforma Information (Details) link:calculationLink link:definitionLink link:presentationLink 995486 - Disclosure - Note 4 - Fair Value Measurements (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995487 - Disclosure - Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details) link:calculationLink link:definitionLink link:presentationLink 995488 - Disclosure - Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details) link:calculationLink link:definitionLink link:presentationLink 995489 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details) link:calculationLink link:definitionLink link:presentationLink 995490 - Disclosure - Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details) link:calculationLink link:definitionLink link:presentationLink 995491 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details) link:calculationLink link:definitionLink link:presentationLink 995492 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details) link:calculationLink link:definitionLink link:presentationLink 995493 - Disclosure - Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details) link:calculationLink link:definitionLink link:presentationLink 995494 - Disclosure - Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details) link:calculationLink link:definitionLink link:presentationLink 995495 - Disclosure - Note 7 - Major Customers (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995496 - Disclosure - Note 8 - Inventories - Inventories (Details) link:calculationLink link:definitionLink link:presentationLink 995497 - Disclosure - Note 9 - Leases (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995498 - Disclosure - Note 9 - Leases - Lease Costs (Details) link:calculationLink link:definitionLink link:presentationLink 995499 - Disclosure - Note 9 - Leases - Maturities of Lease Liabilities (Details) link:calculationLink link:definitionLink link:presentationLink 995500 - Disclosure - Note 10 - Debt (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995501 - Disclosure - Note 10 - Debt - Outstanding Letters of Credit (Details) link:calculationLink link:definitionLink link:presentationLink 995502 - Disclosure - Note 10 - Debt - Future Maturities of Long-term Debt (Details) link:calculationLink link:definitionLink link:presentationLink 995503 - Disclosure - Note 11 - Stock-based Compensation Plan (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995504 - Disclosure - Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details) link:calculationLink link:definitionLink link:presentationLink 995505 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details) link:calculationLink link:definitionLink link:presentationLink 995506 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) link:calculationLink link:definitionLink link:presentationLink 995507 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals) link:calculationLink link:definitionLink link:presentationLink 995508 - Disclosure - Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details) link:calculationLink link:definitionLink link:presentationLink 995509 - Disclosure - Note 12 - Employee Stock Purchase Plan (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995510 - Disclosure - Note 13 - Employee Benefit Plans (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995511 - Disclosure - Note 14 - Segment Information (Details Textual) link:calculationLink link:definitionLink link:presentationLink 995512 - Disclosure - Note 14 - Segment Information - Segment Information (Details) link:calculationLink link:definitionLink link:presentationLink 995513 - Disclosure - Note 14 - Segment Information - Identifiable Assets (Details) link:calculationLink link:definitionLink link:presentationLink 995514 - Disclosure - Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details) link:calculationLink link:definitionLink link:presentationLink 995515 - Disclosure - Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details) link:calculationLink link:definitionLink link:presentationLink EX-101.CAL 7 intt-20240331_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.DEF 8 intt-20240331_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE EX-101.LAB 9 intt-20240331_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE Document And Entity Information Dividend yield Note To Financial Statement Details Textual Identifiable intangible assets us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill Significant Accounting Policies Note 2 - Summary of Significant Accounting Policies Note 3 - Acquisition Risk-free interest rate Note 4 - Fair Value Measurements Note 5 - Goodwill and Intangible Assets Note 6 - Revenue From Contracts With Customers Note 8 - Inventories Note 9 - Leases Note 10 - Debt Trade accounts receivable us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables Note 11 - Stock-based Compensation Plan Other current assets us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther Note 14 - Segment Information Cash us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details) us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent Business Combination, Contingent Consideration, Liability, Current Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details) Inventories us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory intt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour Thereafter Amount of lessee's undiscounted obligation for lease payment for operating lease due after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach). Expected common stock market price volatility factor Note 3 - Acquisition - Intangible Assets (Details) us-gaap_LiabilitiesCurrent Total current liabilities Automobile Leases [Member] Information pertaining to automobile leases. Schedule of Maturities of Long-Term Debt [Table Text Block] Note 3 - Acquisition - Proforma Information (Details) Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details) Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details) Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details) Weighted average expected life of stock options (years) (Year) Other current liabilities us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable Business Combination, Consideration Transferred, Equity Interests Issued and Issuable Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details) Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details) us-gaap_BusinessCombinationConsiderationTransferred1 Business Combination, Consideration Transferred Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details) Finite-lived intangible assets Acquisition of Alfamation Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details) Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Note 8 - Inventories - Inventories (Details) Useful life (Year) Note 9 - Leases - Lease Costs (Details) Note 9 - Leases - Maturities of Lease Liabilities (Details) Note 10 - Debt - Outstanding Letters of Credit (Details) Note 10 - Debt - Future Maturities of Long-term Debt (Details) Share-Based Payment Arrangement, Option, Activity [Table Text Block] Indefinite-lived intangible assets Acquisition of Alfamation Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details) Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details) Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) Granted, weighted average exercise price (in dollars per share) us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent Foreign currency translation adjustments Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals) Vested, weighted average exercise price (in dollars per share) Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details) Forfeited, weighted average exercise price (in dollars per share) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue Unvested shares outstanding, weighted average exercise price (in dollars per share) Unvested shares outstanding, weighted average exercise price (in dollars per share) Note 14 - Segment Information - Segment Information (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod Forfeited, number of shares (in shares) Note 14 - Segment Information - Identifiable Assets (Details) Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber Unvested shares outstanding (in shares) Unvested shares outstanding (in shares) Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details) Notes To Financial Statements Notes To Financial Statements [Abstract] Granted, number of shares (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares) Vested, number of shares (in shares) Diluted earnings per share (in dollars per share) us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted Nonvested Restricted Stock Shares Activity [Table Text Block] Current portion of Term Note and other long-term debt us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number (in shares) Net earnings us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss Business Acquisition, Pro Forma Information [Table Text Block] Options exercisable (in shares) Proceeds from shares sold under Employee Stock Purchase Plan The amount of cash inflow from shares sold under employee stock purchase plan. Revenue us-gaap_BusinessAcquisitionsProFormaRevenue us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) Electronic Test [Member] Related to Electronic Test segment. us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares (in shares) Retirement Plan Name [Axis] Video Imaging [Member] Related to video imaging. Retirement Plan Name [Domain] Flying Probe and In-circuit Testers [Member] Related to flying probe and in-circuit testers. us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice Options outstanding, weighted average exercise price (in dollars per share) Options outstanding, weighted average exercise price (in dollars per share) Life Sciences [Member] Related to Life Sciences. Environmental Technologies [Member] Related to Environmental Technologies segment. Process Technologies [Member] Related to process technologies. Customer deposits and deferred revenue us-gaap_ContractWithCustomerLiabilityCurrent Canceled, weighted average exercise price (in dollars per share) Goodwill and Intangible Assets Disclosure [Text Block] Granted, weighted average exercise price (in dollars per share) us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice Domestic and foreign income taxes payable Exercised, weighted average exercise price (in dollars per share) Security [Member] Related to security. Accrued wages and benefits Lessee, Operating Leases [Text Block] intt_ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceived Contingent Liability, Repayment of State and Local Grant Funds Received Amount of liability recognized arising from contingent for repayment of state and local grant funds received. Chief Executive Officer and Chief Financial Officer [Member] Related to Chief Executive Officer and Chief Financial Officer. Accounts payable Revolving Credit Facility [Member] us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber Options outstanding, number of shares (in shares) Options outstanding, number of shares (in shares) Credit Facility [Axis] Credit Facility [Domain] Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block] Trademarks [Member] us-gaap_EscrowDepositsRelatedToPropertySales Cash holdback pending final working capital adjustment us-gaap_PolicyTextBlockAbstract Accounting Policies us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate Share-Based Compensation Arrangement by Share-Based Payment Award, Discount from Market Price, Purchase Date City of Rochester and State of New York [Member] Represents information related to city of Rochester and state of New York. Finite-Lived and Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block] Trade Names [Member] Accrued sales commissions Alfamation [Member] Relating to Alfamation. us-gaap_StockIssued1 Stock issued Accrued professional fees intt_AnnualLeasePayments Annual Lease Payments Represents the amount of annual lease payments. Indefinite-Lived Intangible Assets [Axis] Contingent Liability, Repayment of State and Local Grant Funds Received, Policy [Policy Text Block] Disclosure of accounting policy for contingent liability for repayment of state and local grant funds received. Indefinite-Lived Intangible Assets, Major Class Name [Domain] us-gaap_PaymentsToAcquirePropertyPlantAndEquipment Purchase of property and equipment us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements Unvested shares of restricted stock and employee stock options (in shares) Details of acquisition: us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1 Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year) us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage Current liabilities: Vesting [Axis] Operating lease liabilities Increase (Decrease) in Operating Lease Liability Vesting [Domain] Patented Technology [Member] Share-Based Payment Arrangement, Tranche One [Member] Share-Based Payment Arrangement, Tranche Two [Member] Cash payments for: us-gaap_Assets Identifiable Assets Total assets Patents [Member] Plan Name [Axis] Technology-Based Intangible Assets [Member] Plan Name [Domain] Property and equipment: us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Goodwill Intangible And Long Lived Assets [Policy Text Block] The policy disclosure of goodwill intangible and long lived assets. us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) Customer Relationships [Member] Customer-Related Intangible Assets [Member] us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount Share-Based Payment Arrangement, Amount Capitalized Computer Software, Intangible Asset [Member] Deferred tax assets Share-Based Payment Arrangement [Text Block] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation Shares surrendered to satisfy tax liability at vesting of stock-based awards Award Type [Domain] Award Type [Axis] Net earnings (loss) Net earnings Net earnings Finite-lived, Accumulated Amortization Net Carrying Amount, finite-lived Balance Balance Net Carrying Amount Net Carrying Amount Net Carrying Amount Warehouse and Office Space [Member] Relating to Warehouse and Office space. Finite-lived, Gross Carrying Amount Restricted Stock [Member] Share-Based Payment Arrangement, Option [Member] Schedule Of Intangible Assets [Table Text Block] The tabular disclosure of the intangible assets. us-gaap_GoodwillForeignCurrencyTranslationGainLoss Impact of foreign currency translation adjustments Goodwill resulting from acquisition Acquisition of Alfamation Net Carrying Amount, indefinite-lived us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill Indefinite-lived, Gross Carrying Amount Balance Balance Business Combination Disclosure [Text Block] us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment Less: accumulated depreciation us-gaap_PropertyPlantAndEquipmentNet Property and Equipment Net property and equipment Goodwill Goodwill Balance Balance us-gaap_PropertyPlantAndEquipmentGross Gross property and equipment Machinery and equipment Leasehold improvements Long-Term Debt, Type [Axis] Long-Term Debt, Type [Domain] us-gaap_ProfitLoss Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Interest rate swap Interest rate swap Members of The Senior Management [Member] Represents members of the senior management. intt_IncreaseDecreaseInAccruedProfessionalFees Accrued professional fees The amount of increase (decrease) in accrued professional fees. Derivative Instrument [Axis] Employees [Member] Related to employees. Derivative Contract [Domain] CASH FLOWS FROM INVESTING ACTIVITIES Range of remaining lease terms (in years) (Year) The remaining lease term of operating leases. Employee Stock Purchase Plan [Text Block] The entire disclosure for employee stock purchase plan. Employee Stock Purchase Plan [Member] Represents the employee stock purchase plan. us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable Domestic and foreign income taxes payable Vesting Based On Performance Metrics [Member] Represents vesting based on performance metrics. Letter of Credit [Member] us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities Accrued wages and benefits Income tax expense The Ambrell Plan [Member] Related to the Ambrell defined contribution retirement plan. us-gaap_IncreaseDecreaseInAccountsPayable Accounts payable us-gaap_OperatingExpenses Total operating expenses us-gaap_DebtInstrumentTerm Debt Instrument, Term (Year) Restricted certificates of deposit us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount Debt Instrument, Unused Borrowing Capacity, Amount us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount Defined Contribution Plan, Employer Discretionary Contribution Amount General and administrative expense us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch Defined Contribution Plan, Employer Matching Contribution, Percent of Match Cash and cash equivalents Impact of foreign currency translation adjustments us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome us-gaap_IncreaseDecreaseInOtherCurrentLiabilities Other current liabilities us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities Other liabilities us-gaap_AllocatedShareBasedCompensationExpense Share-Based Payment Arrangement, Expense intt_DefinedContributionPlanMaximumAnnualEmployerMatchingContributionPerEmployeeAmount Defined Contribution Plan Maximum Annual Employer Matching Contribution Per Emplyee Amount Maximum dollar amount of employer's annual matching contribution to a defined contribution plan Asset [Member] The information pertaining to a financial statement line item. Amendment Flag us-gaap_ComprehensiveIncomeNetOfTax Comprehensive earnings City Area Code New Accounting Pronouncements, Policy [Policy Text Block] Stock Issued During Period, Value, Restricted Stock Award, Forfeitures Reclassification, Comparability Adjustment [Policy Text Block] Customer deposits and deferred revenue us-gaap_SharesOutstanding Balance (in shares) Balance (in shares) Preferred stock, shares outstanding (in shares) us-gaap_DebtWeightedAverageInterestRate Debt, Weighted Average Interest Rate Current Fiscal Year End Date us-gaap_DebtInstrumentInterestRateEffectivePercentage Debt Instrument, Interest Rate, Effective Percentage us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets Prepaid expenses and other current assets Weighted average discount rate Document Fiscal Period Focus Operating lease cost Document Fiscal Year Focus Short-term lease cost Lease, Cost [Table Text Block] Document Period End Date Weighted average remaining lease term (in years) (Year) Entity File Number Entity Emerging Growth Company us-gaap_DebtInstrumentFaceAmount Debt Instrument, Face Amount Lease Expiration Date Document Type Entity Small Business Entity Shell Company Document Information [Line Items] Document Information [Table] us-gaap_AreaOfRealEstateProperty Area of Real Estate Property (Square Foot) us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue Balance Balance Entity Filer Category Debt Instrument [Axis] Entity Current Reporting Status Debt Instrument, Name [Domain] us-gaap_BusinessCombinationAcquisitionRelatedCosts Business Combination, Acquisition Related Costs us-gaap_ConcentrationRiskPercentage1 Concentration Risk, Percentage us-gaap_IncreaseDecreaseInAccountsReceivable Trade accounts receivable Amortization of deferred compensation related to stock-based awards Statement of Comprehensive Income [Abstract] Entity Tax Identification Number Entity Central Index Key us-gaap_DepreciationAndAmortization Acquired intangible amortization Entity Registrant Name Liability Class [Axis] Fair Value by Liability Class [Domain] Entity [Domain] Customer Concentration Risk [Member] Legal Entity [Axis] Entity Address, Address Line One Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block] ecd_NonRule10b51ArrTrmntdFlag Non-Rule 10b5-1 Arrangement Terminated [Flag] us-gaap_AmortizationOfIntangibleAssets Amortization Entity Address, City or Town ecd_Rule10b51ArrTrmntdFlag Rule 10b5-1 Arrangement Terminated [Flag] ecd_Rule10b51ArrAdoptedFlag Rule 10b5-1 Arrangement Adopted [Flag] Entity Address, Postal Zip Code us-gaap_TreasuryStockCommonValue Treasury stock, at cost; 78,515 and 75,758 shares, respectively Entity Address, State or Province Concentration Risk Type [Axis] ecd_NonRule10b51ArrAdoptedFlag Non-Rule 10b5-1 Arrangement Adopted [Flag] Concentration Risk Type [Domain] Material Terms of Trading Arrangement [Text Block] Entity Common Stock, Shares Outstanding Revenue Benchmark [Member] us-gaap_IncreaseDecreaseInOtherNoncurrentAssets Other assets us-gaap_IncreaseDecreaseInInventories Inventories Trading Symbol Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Issuance of shares in connection with acquisition of Alfamation (in shares) Nature of Operations [Text Block] Shares issued under Employee Stock Purchase Plan (in shares) Stock Issued During Period, Shares, Employee Stock Purchase Plans (in shares) Local Phone Number Issuance of shares in connection with acquisition of Alfamation Stock options exercised (in shares) Exercised, number of shares (in shares) us-gaap_TableTextBlock Notes Tables Shares issued under Employee Stock Purchase Plan Stock Issued During Period, Value, Employee Stock Purchase Plan Issuance of unvested shares of restricted stock (in shares) us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited Stock Issued During Period, Shares, Restricted Stock Award, Forfeited (in shares) us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity Line of Credit Facility, Maximum Borrowing Capacity Stock options exercised Issuance of unvested shares of restricted stock Granted, number of shares (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod Canceled, number of shares (in shares) Line of Credit, Issue Date Line of Credit, Expiration Date Line of Credit Facility, Lender [Domain] Collaborative Arrangement and Arrangement Other than Collaborative [Domain] us-gaap_StockIssuedDuringPeriodSharesNewIssues Stock Issued During Period, Shares, New Issues (in shares) Raw materials Lender Name [Axis] Selling expense us-gaap_LiabilitiesAndStockholdersEquity Total liabilities and stockholders' equity Finished goods Work in process us-gaap_StockIssuedDuringPeriodValueNewIssues Stock Issued During Period, Value, New Issues UNITED STATES Engineering and product development expense Retained earnings Accumulated other comprehensive earnings Debt Disclosure [Text Block] us-gaap_InterestExpense Interest Expense, Operating and Nonoperating Interest expense Interest expense Changes in assets and liabilities: us-gaap_DisclosureTextBlockAbstract Notes to Financial Statements Inventory Disclosure [Text Block] Operating lease liabilities, net of current portion Schedule of Inventory, Current [Table Text Block] intt_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantedFairValue Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Granted, Fair Value Fair value of awards other than options granted during the period. Total Operating Lease, Liability Restricted Stock Vesting in Three Years [Member] Information related to the restricted stock awards vesting in three years. Deferred income tax expense (benefit) intt_IncreaseDecreaseInContractWithCustomerLiabilityNoncurrent Deferred revenue, net of current portion Amount of increase (decrease) in noncurrent obligation to transfer good or service to customer for which consideration has been received or is receivable. Current portion of operating lease liabilities Retirement Benefits [Text Block] us-gaap_IntangibleAssetsGrossExcludingGoodwill Intangible Assets, Gross Carrying Amount Intangible Assets, Gross Carrying Amount Subsequent Events [Text Block] Right-of-use assets, net us-gaap_OperatingLeaseRightOfUseAsset Operating Lease, Right-of-Use Asset Acculogic [Member] Represents Acculogic. us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue Total lease payments us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount Less imputed interest us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree 2027 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear 2024 (remainder) 2028 Schedule of Changes in Goodwill [Table Text Block] Tabular disclosure of the changes in goodwill. Fair Value Measurement, Policy [Policy Text Block] us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo 2026 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree 2027 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour 2028 us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths 2025 us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo 2026 Automotive [Member] Represents Automotive. Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Subsequent Events, Policy [Policy Text Block] us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths 2025 Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] us-gaap_ShareBasedCompensation Amortization of deferred compensation related to stock-based awards Other assets Lessee, Leases [Policy Text Block] us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear 2024 Environmental Technologies in Germany [Member] Represents Environmental technologies in Germany Business Combinations Policy [Policy Text Block] Earnings Per Share, Policy [Policy Text Block] intt_SharebasedCompensationArrangementBySharebasedPaymentAwardDiscountAmount Share-based Compensation Arrangement by Share-based Payment Award, Discount Amount Discount on shares sold under Employee Stock Purchase Plan Discount amount from fair value on purchase date that participants pay for shares. us-gaap_Revenues Revenues us-gaap_FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss Impact of foreign currency translation adjustments Operating expenses: Income Tax, Policy [Policy Text Block] Schedule of Finite-Lived Intangible Assets [Table Text Block] us-gaap_LesseeOperatingLeaseTermOfContract Lessee, Operating Lease, Term of Contract (Year) Customer Backlog [Member] Represents customer backlog. us-gaap_IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss Impact of foreign currency translation adjustments Schedule of Indefinite-Lived Intangible Assets [Table Text Block] Depreciation and amortization intt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageLowerRange Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range Lower range limit of percentage of vesting of award under share-based payment arrangement. intt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageUpperRange Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range Upper range limit of percentage of vesting of award under share-based payment arrangement. us-gaap_SharesIssuedPricePerShare Shares Issued, Price Per Share (in dollars per share) us-gaap_AssetsCurrent Total current assets Share-Based Payment Arrangement [Policy Text Block] Treasury stock, shares (in shares) Common stock, $0.01 par value; 20,000,000 shares authorized; 12,566,024 and 12,241,925 shares issued, respectively us-gaap_NoncashOrPartNoncashAcquisitionValueOfLiabilitiesAssumed1 Liabilities assumed Measurement Frequency [Axis] Fair value of assets acquired, net of cash Measurement Frequency [Domain] Adjustments to reconcile net earnings to net cash provided by operating activities: Fair Value, Recurring [Member] Common stock, shares authorized (in shares) Common stock, shares issued (in shares) Common stock, par value (in dollars per share) Statistical Measurement [Domain] Maximum [Member] Minimum [Member] Product and Service [Axis] Product and Service [Domain] Statistical Measurement [Axis] Accrued expenses intt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities Amount of accrued liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date. Preferred stock, $0.01 par value; 5,000,000 shares authorized; no shares issued or outstanding Preferred stock, shares issued (in shares) Contingent Consideration Liabilities [Member] Represents contingent consideration liabilities. Domestic and foreign income taxes intt_IntangibleAssetsAcquiredTotal Total intangible assets Amount of increase in assets, excluding financial assets, lacking physical substance, from an acquisition. Geographical [Axis] Geographical [Domain] Preferred stock, shares authorized (in shares) Debt (current and long-term) intt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilitiesDebt Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities, Debt Amount of debt obligations assumed in business combination. Inventories Total inventories Preferred stock par value (in dollars per share) Vesting on January 1, 2025, Based on Performance Metrics [Member] Pertain to the vesting schedule and criteria of award under share-based payment arrangement. President of Process Technologies [Member] Pertains to President of Environmental Technologies. Net revenues Revenue Fair Value, Inputs, Level 3 [Member] us-gaap_ForeignCurrencyTransactionGainLossBeforeTax Foreign exchange gain Fair Value Hierarchy and NAV [Domain] Customer [Axis] Customer [Domain] Share-Based Payment Arrangement, Vesting on Third Anniversary of Grant Date [Member] Vesting schedule of award under share-based payment arrangement. Fair Value, Inputs, Level 1 [Member] Fair Value, Inputs, Level 2 [Member] Chief Executive Officer, Chief Financial Officer, and Division Presidents [Member] Pertains to the CEO, CFO, and Division Presidents. Fair Value Hierarchy and NAV [Axis] Inventory consigned to others End User [Member] Customers who are the end user of the company's products. Semiconductor Market [Member] The semiconductor market into which the reporting entity sells products. Debt Instrument, Long-term, Fixed Interest Rate Debt [Member] Information pertaining to the debt instrument. Service and Other Products [Member] Represents information about services and other products sold by the reporting entity. Semiconductor Production Test Products [Member] Represents information about semiconductor production test products sold by the reporting entity. Debt Instrument, Short-term, Variable Interest Rate Debt [Member] Infoamrti0n pertaining to the debt instrument. Industrial Market [Member] The industrial market into which the reporting entity sells products. CASH FLOWS FROM OPERATING ACTIVITIES 401(k) Plan [Member] A 401(k) plan offered by the reporting entity to eligible employees. Schedule of Segment Reporting Information, by Segment [Table Text Block] Revenue [Policy Text Block] Statement [Line Items] Allowance for doubtful accounts us-gaap_NumberOfOperatingSegments Number of Operating Segments Trade accounts receivable, net of allowance for credit losses of $426 and $474, respectively us-gaap_NumberOfReportableSegments Number of Reportable Segments Additional paid-in capital AOCI Attributable to Parent [Member] Stockholders' equity: Other income Other income (expense) us-gaap_NonoperatingIncomeExpense Segment Reporting Disclosure [Text Block] Proceeds from sale of demonstration equipment, net of gain Proceeds from sale of machinery and equipment net of gain. Current assets: Fair Value Disclosures [Text Block] us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations Cash, cash equivalents and restricted cash at beginning of period Cash, cash equivalents and restricted cash at end of period Inventory, Policy [Policy Text Block] Effects of exchange rates on cash us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect Net cash provided by (used in) all activities Texas Instruments Incorporated [Member] Texas instruments incorporated member. us-gaap_NetCashProvidedByUsedInFinancingActivities Net cash used in financing activities us-gaap_Liabilities Total liabilities Commitments and Contingencies Sale of Stock [Axis] Schedule Of Outstanding Letters Of Credit [Table Text Block] Schedule of outstanding letters of credit table text block. Sale of Stock [Domain] Mt Laurel [Member] Represents information about Mt laurel. us-gaap_OperatingIncomeLoss Operating income us-gaap_NetCashProvidedByUsedInOperatingActivities Net cash provided by operating activities Mansfield [Member] Represents information about Mansfield. us-gaap_NetCashProvidedByUsedInInvestingActivities Net cash used in investing activities Prepaid expenses and other current assets Cost of revenue us-gaap_GrossProfit Gross profit intt_DefinedContributionPlanEmployerMatchingContributionVestingPeriod Defined Contribution Plan Employer Matching Contribution Vesting Period (Year) Defined contribution plan employer matching contribution vesting period. Counterparty Name [Axis] Counterparty Name [Domain] Derivatives, Policy [Policy Text Block] Consolidation Items [Domain] Deferred tax liabilities Provision for excess and obsolete inventory us-gaap_InventoryWriteDown Inventory Write-down Thermal Testing Products [Member] Represents information about Thermal products sold by the reporting entity. Consolidation Items [Axis] At-the-Market Issuance Sales Agreement [Member] Represents At-the-Market Issuance Sales Agreement. intt_CommissionFeePercentageOfGrossProceeds Commission Fee, Percentage of Gross Proceeds The percentage charged for the sales of shares. Consolidated Entities [Axis] Consolidated Entities [Domain] President of Environmental Technologies [Member] Represents the president of Environmental Technologies. The 2023 Stock Incentive Plan [Member] Represents the 2023 Stock Incentive Plan. us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation Settlement of employee tax liabilities in connection with treasury stock transaction Letters of Credit Amount Outstanding Process Technologies in Europe [Member] Represents the process technologies segment in Europe Retained Earnings [Member] intt_DebtInstrumentCovenantFixedChargeCoverageRatio Debt Instrument, Covenant, Fixed Charge Coverage Ratio Represents the covenant for a debt instrument relating to the fixed charge coverage ratio. intt_DebtInstrumentCovenantRatioOfConsolidatedFundedDebtToConsolidatedEbitda Debt Instrument, Covenant, Ratio of Consolidated Funded Debt to Consolidated EBITDA Represents the covenant for a debt instrument relating to the ratio of consolidated funded debt to consolidated EBITDA. Proceeds from stock options exercised Title and Position [Domain] Title and Position [Axis] Treasury Stock, Common [Member] Additional Paid-in Capital [Member] Common Stock [Member] intt_IncreaseDecreaseInAccruedSalesCommission Accrued sales commissions The increase (decrease) during the reporting period in accrued sales commission. Equity Components [Axis] Equity Component [Domain] us-gaap_LongTermDebt Long-Term Debt Long-Term Debt Performance-Based Restricted Stock [Member] Represents the performance-based restricted stock. Term Note [Member] Information related to Term Note. Other Current Liabilities [Member] October 2021 Agreement [Member] Information related to the October 2021 Agreement. Earnings before income tax expense us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest Earnings before income tax expense M&T Bank [Member] Information related to M&T Bank. intt_DebtInstrumentDrawPeriod Debt Instrument, Draw Period (Year) Represents the period of time in which funds can be withdrawn under debt agreement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. intt_DebtInstrumentInterestRateInEventOfDefault Debt Instrument, Interest Rate in Event of Default Contractual interest rate for funds borrowed in event of default, under the debt agreement. us-gaap_LineOfCredit Long-Term Line of Credit, Total Disaggregation of Revenue [Table Text Block] us-gaap_RepaymentsOfLongTermDebt Repayments of long-term borrowings Revenue from Contract with Customer [Text Block] Statement of Financial Position Location, Balance [Axis] Statement of Financial Position Location, Balance [Domain] Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block] Document Quarterly Report Receivable [Policy Text Block] Entity Incorporation, State or Country Code General and Administrative Expense [Member] Accounting Policies [Abstract] Significant Accounting Policies [Text Block] Document Transition Report Concentration Risk Disclosure [Text Block] us-gaap_ShortTermBorrowings Short-Term Debt Entity Interactive Data Current Selling and Marketing Expense [Member] Security Exchange Name Title of 12(b) Security intt_AggregateOfferingPriceOfStock Aggregate Offering Price of Stock The aggregate value offering price of stock issued and sold. us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs Accounts Receivable, Allowance for Credit Loss, Writeoff OEM, Integrators and Distributor [Member] Represents OEM, Integrators and Distributor Lease Facility in Singapore [Member] Represents the Lease Facility in Singapore. us-gaap_ProceedsFromIssuanceOfLongTermDebt Proceeds from Issuance of Long-term Debt, Total Cost of Sales [Member] Research and Development Expense [Member] Amended Loan Agreement [Member] Represents The Loan Agreement, As Amended by the Third Amendment, the “amended Loan Agreement. Statement of Income Location, Balance [Axis] Statement of Income Location, Balance [Domain] Basis Of Presentation And Use Of Estimates [Policy Text Block] Basis of presentation and use of estimates policy text block. Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Segments [Axis] Segments [Domain] Corporate Segment [Member] Industry Sector [Domain] us-gaap_SharePrice Share Price (in dollars per share) us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period (in shares) Weighted average common shares and common share equivalents outstanding – diluted (in shares) Weighted average common shares and common share equivalents outstanding–diluted (in shares) Proceeds from short-term borrowings Industry Sector [Axis] Non-US [Member] Statement [Table] Statement of Financial Position [Abstract] Earnings per common share – diluted (in dollars per share) Weighted average common shares outstanding – basic (in shares) Weighted average common shares outstanding–basic (in shares) Business Acquisition [Axis] Earnings per common share – basic (in dollars per share) Business Acquisition, Acquiree [Domain] Statement of Cash Flows [Abstract] 2024 (remainder) us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear Lease Contractual Term [Domain] Statement of Stockholders' Equity [Abstract] Lease Contractual Term [Axis] Income Statement [Abstract] Other comprehensive loss 2027 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree 2028 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour Revenue from External Customers by Geographic Areas [Table Text Block] Long-Lived Assets by Geographic Areas [Table Text Block] us-gaap_BusinessCombinationContingentConsiderationLiability Contingent consideration liability 2025 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths 2026 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo intt_SharebasedCompensationArrangementBySharebasedPaymentAwardProbableFinalVestingPercentage Share-Based Compensation Arrangement by Share-Based Payment Award, Probable Final Vesting Percentage Probable final vesting percentage of share-based payment award. us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued Business Acquisition, Equity Interest Issued or Issuable, Number of Shares (in shares) us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred Contingent consideration Fair Value, Liabilities Measured on Recurring Basis [Table Text Block] Thermal Process [Member] Represents thermal process. CASH FLOWS FROM FINANCING ACTIVITIES Other liabilities Defense/ Aerospace [Member] Represents defense/ aerospace. Segment Reporting, Reconciling Item, Corporate Nonsegment [Member] Independent Directors [Member] Represents the independent directors. us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent Deferred Compensation Liability, Classified, Noncurrent us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet Total purchase price us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense Operating Lease, Right-of-Use Asset, Periodic Reduction Deferred revenue, net of current portion us-gaap_StockholdersEquity Total stockholders' equity Balance Balance Other non-current liabilities us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired Acquisition of business, net of cash acquired Net cash paid for acquisition intt_CovenantFutureAmountReceivable Covenant, Future Amount Receivable Future amount receivable if we create and maintain specified levels of employment in the specified location through various dates ending in 2023. Class of Stock [Axis] Deferred tax liability us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities Term Note and other long-term debt, net of current portion us-gaap_PaymentsToAcquireBusinessesGross Payments to Acquire Businesses, Gross Other current liabilities us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther Interest Rate Swap [Member] Schedule of Weighted Average Number of Shares [Table Text Block] Accounts payable us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable Unrealized loss on interest rate swap agreement Operating Segments [Member] Other Multi Markets [Member] Information related to other multi markets. intt_NumberOfMajorCustomers Number of Major Customers Represents the number of major customers accounting for 10% or more of the specified concentration risk benchmark, which includes, but not limited to, sales revenue, accounts receivable, etc. intt_DeferredGrantProceeds Deferred Grant Proceeds Represents the amount of deferred grant proceeds. Property and equipment us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment Other assets us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets EX-101.PRE 10 intt-20240331_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE XML 12 R1.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Document And Entity Information - shares
3 Months Ended
Mar. 31, 2024
May 01, 2024
Document Information [Line Items]    
Entity Central Index Key 0001036262  
Entity Registrant Name INTEST CORP  
Amendment Flag false  
Current Fiscal Year End Date --12-31  
Document Fiscal Period Focus Q1  
Document Fiscal Year Focus 2024  
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Mar. 31, 2024  
Document Transition Report false  
Entity File Number 1-36117  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 22-2370659  
Entity Address, Address Line One 804 East Gate Drive, Suite 200  
Entity Address, City or Town Mt. Laurel  
Entity Address, State or Province NJ  
Entity Address, Postal Zip Code 08054  
City Area Code 856  
Local Phone Number 505-8800  
Title of 12(b) Security Common Stock, par value $0.01 per share  
Trading Symbol INTT  
Security Exchange Name NYSE  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   12,489,642
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Consolidated Balance Sheets (Current Period Unaudited) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Current assets:    
Cash and cash equivalents $ 27,331 $ 45,260
Trade accounts receivable, net of allowance for credit losses of $426 and $474, respectively 22,859 18,175
Inventories 31,331 20,089
Prepaid expenses and other current assets 3,868 2,254
Total current assets 85,389 85,778
Property and equipment:    
Machinery and equipment 8,639 7,118
Leasehold improvements 3,932 3,601
Gross property and equipment 12,571 10,719
Less: accumulated depreciation (7,800) (7,529)
Net property and equipment 4,771 3,190
Right-of-use assets, net 6,270 4,987
Goodwill 33,278 21,728
Net Carrying Amount 28,819 16,596
Deferred tax assets 0 1,437
Restricted certificates of deposit 100 100
Other assets 900 1,013
Total assets 159,527 134,829
Current liabilities:    
Current portion of Term Note and other long-term debt 9,629 4,100
Current portion of operating lease liabilities 2,017 1,923
Accounts payable 11,395 5,521
Accrued wages and benefits 6,482 4,156
Accrued professional fees 883 1,228
Customer deposits and deferred revenue 5,596 3,797
Accrued sales commissions 1,116 1,055
Domestic and foreign income taxes payable 509 1,038
Other current liabilities 2,026 1,481
Total current liabilities 39,653 24,299
Operating lease liabilities, net of current portion 4,644 3,499
Term Note and other long-term debt, net of current portion 10,808 7,942
Contingent consideration 822 1,093
Deferred revenue, net of current portion 1,210 1,331
Deferred tax liabilities 1,126 0
Other liabilities 1,947 384
Total liabilities 60,210 38,548
Commitments and Contingencies
Stockholders' equity:    
Preferred stock, $0.01 par value; 5,000,000 shares authorized; no shares issued or outstanding 0 0
Common stock, $0.01 par value; 20,000,000 shares authorized; 12,566,024 and 12,241,925 shares issued, respectively 125 122
Additional paid-in capital 56,954 54,450
Retained earnings 42,858 42,196
Accumulated other comprehensive earnings 311 414
Treasury stock, at cost; 78,515 and 75,758 shares, respectively (931) (901)
Total stockholders' equity 99,317 96,281
Total liabilities and stockholders' equity $ 159,527 $ 134,829
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Allowance for doubtful accounts $ 426 $ 474
Preferred stock par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock, shares authorized (in shares) 5,000,000 5,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, shares authorized (in shares) 20,000,000 20,000,000
Common stock, shares issued (in shares) 12,566,024 12,241,925
Treasury stock, shares (in shares) 78,515 75,758
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Consolidated Statements of Operations (Unaudited) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Revenue $ 29,824 $ 31,919
Cost of revenue 16,748 16,867
Gross profit 13,076 15,052
Operating expenses:    
Selling expense 4,590 4,455
Engineering and product development expense 1,982 1,904
General and administrative expense 6,012 5,175
Total operating expenses 12,584 11,534
Operating income 492 3,518
Interest expense (140) (182)
Other income 435 58
Earnings before income tax expense 787 3,394
Income tax expense 125 577
Net earnings $ 662 $ 2,817
Earnings per common share – basic (in dollars per share) $ 0.06 $ 0.26
Weighted average common shares outstanding – basic (in shares) 12,026,361 10,755,729
Earnings per common share – diluted (in dollars per share) $ 0.05 $ 0.25
Weighted average common shares and common share equivalents outstanding – diluted (in shares) 12,158,297 11,088,664
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Consolidated Statements of Comprehensive Earnings (Unaudited) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Net earnings $ 662 $ 2,817
Unrealized loss on interest rate swap agreement (14) (99)
Foreign currency translation adjustments (89) 170
Comprehensive earnings $ 559 $ 2,888
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($)
$ in Thousands
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earnings [Member]
AOCI Attributable to Parent [Member]
Treasury Stock, Common [Member]
Total
Balance (in shares) at Dec. 31, 2022 11,063,271          
Balance at Dec. 31, 2022 $ 111 $ 31,987 $ 32,854 $ 218 $ (214) $ 64,956
Net earnings 0 0 2,817 0 0 2,817
Other comprehensive loss 0 0 0 71 0 71
Amortization of deferred compensation related to stock-based awards $ 0 474 0 0 0 474
Issuance of unvested shares of restricted stock (in shares) 90,588          
Issuance of unvested shares of restricted stock $ 1 (1) 0 0 0 0
Stock Issued During Period, Shares, Restricted Stock Award, Forfeited (in shares) (13,271)          
Stock Issued During Period, Value, Restricted Stock Award, Forfeitures $ 0 0 0 0 0 0
Stock options exercised (in shares) 25,200          
Stock options exercised $ 0 165 0 0 0 165
Shares issued under Employee Stock Purchase Plan (in shares) 2,292          
Shares issued under Employee Stock Purchase Plan $ 0 48 0 0 0 48
Shares surrendered to satisfy tax liability at vesting of stock-based awards $ 0 0 0 0 (33) (33)
Balance (in shares) at Mar. 31, 2023 11,168,080          
Balance at Mar. 31, 2023 $ 112 32,673 35,671 289 (247) 68,498
Balance (in shares) at Dec. 31, 2023 12,241,925          
Balance at Dec. 31, 2023 $ 122 54,450 42,196 414 (901) 96,281
Net earnings 0 0 662 0 0 662
Other comprehensive loss 0 0 0 (103) 0 (103)
Amortization of deferred compensation related to stock-based awards $ 0 349 0 0 0 349
Issuance of shares in connection with acquisition of Alfamation (in shares) 187,432          
Issuance of shares in connection with acquisition of Alfamation $ 2 2,084 0 0 0 2,086
Issuance of unvested shares of restricted stock (in shares) 138,838          
Issuance of unvested shares of restricted stock $ 1 (1) 0 0 0 0
Stock Issued During Period, Shares, Restricted Stock Award, Forfeited (in shares) (11,200)          
Stock Issued During Period, Value, Restricted Stock Award, Forfeitures $ 0 0 0 0 0 $ 0
Stock options exercised (in shares) 4,925         4,925
Stock options exercised $ 0 18 0 0 0 $ 18
Shares issued under Employee Stock Purchase Plan (in shares) 4,104          
Shares issued under Employee Stock Purchase Plan $ 0 54 0 0 0 54
Shares surrendered to satisfy tax liability at vesting of stock-based awards $ 0 0 0 0 (30) (30)
Balance (in shares) at Mar. 31, 2024 12,566,024          
Balance at Mar. 31, 2024 $ 125 $ 56,954 $ 42,858 $ 311 $ (931) $ 99,317
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Consolidated Statements of Cash Flows (Unaudited) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
CASH FLOWS FROM OPERATING ACTIVITIES    
Net earnings (loss) $ 662 $ 2,817
Adjustments to reconcile net earnings to net cash provided by operating activities:    
Depreciation and amortization 1,282 1,176
Provision for excess and obsolete inventory 176 135
Foreign exchange gain (28) (18)
Amortization of deferred compensation related to stock-based awards 349 474
Discount on shares sold under Employee Stock Purchase Plan (8) (8)
Proceeds from sale of demonstration equipment, net of gain 19 6
Deferred income tax expense (benefit) 226 (404)
Changes in assets and liabilities:    
Trade accounts receivable (982) 291
Inventories (396) (2,038)
Prepaid expenses and other current assets 508 (740)
Other assets (22) 2
Operating lease liabilities (447) (423)
Accounts payable 1,311 403
Accrued wages and benefits 939 (654)
Accrued professional fees (342) (142)
Customer deposits and deferred revenue (782) 921
Accrued sales commissions 66 (221)
Domestic and foreign income taxes payable (406) 864
Other current liabilities 70 43
Deferred revenue, net of current portion (121) 0
Other liabilities (15) (16)
Net cash provided by operating activities 2,075 2,484
CASH FLOWS FROM INVESTING ACTIVITIES    
Acquisition of business, net of cash acquired (18,904) 0
Purchase of property and equipment (340) (334)
Net cash used in investing activities (19,244) (334)
CASH FLOWS FROM FINANCING ACTIVITIES    
Proceeds from short-term borrowings 273 0
Repayments of long-term borrowings (1,181) (1,025)
Proceeds from shares sold under Employee Stock Purchase Plan 46 40
Proceeds from stock options exercised 18 165
Settlement of employee tax liabilities in connection with treasury stock transaction (30) (33)
Net cash used in financing activities (874) (853)
Effects of exchange rates on cash 114 71
Net cash provided by (used in) all activities (17,929) 1,368
Cash, cash equivalents and restricted cash at beginning of period 45,260 14,576
Cash, cash equivalents and restricted cash at end of period 27,331 15,944
Cash payments for:    
Domestic and foreign income taxes 101 118
Details of acquisition:    
Fair value of assets acquired, net of cash 33,750  
Liabilities assumed (24,004)  
Stock issued (2,086)  
Cash holdback pending final working capital adjustment (552)  
Goodwill resulting from acquisition 11,796  
Net cash paid for acquisition $ 18,904 $ (0)
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 1 - Nature of Operations
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Nature of Operations [Text Block]

(1)

NATURE OF OPERATIONS

 

We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing across a wide range of markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. We have three operating segments which are also our reportable segments and reporting units: Electronic Test, Environmental Technologies and Process Technologies.

On March 12, 2024 we completed the acquisition of Alfamation S.p.A., an Italian joint-stock company (“Alfamation”), for an aggregate base purchase price of approximately EUR 20,000 comprised of: (i) EUR 18,000, or $19,674, in cash; and (ii) 187,432 shares of our common stock, valued at $2,086 based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542, or $593 for assets delivered at closing in excess of agreed upon thresholds. The liabilities assumed in connection with the acquisition included debt of approximately EUR 8,616, or $9,418. The acquisition is discussed further in Note 3. The debt assumed is discussed further in Note 10.

 

The consolidated entity is comprised of inTEST Corporation and our wholly-owned subsidiaries. We manufacture our products in the U.S., Italy, Canada and the Netherlands. Marketing and support activities are conducted worldwide from our facilities in the U.S., Italy, Canada, Germany, Singapore, the Netherlands, China and the U.K. We operate our business worldwide and sell our products both domestically and internationally.

 

All of our operating segments have multiple products that we design, manufacture and market to our customers. Due to a number of factors, our products have varying levels of gross margin. The mix of products we sell in any period is ultimately determined by our customers’ needs. Therefore, the mix of products sold in any given period can change significantly from the prior period. In addition, we sell our products to a variety of different types of customers with varying levels of discounts and commission expense. As a result of changes in both the mix of products sold as well as customer mix in any given period, our consolidated gross margin can vary significantly from period to period.

 

The semiconductor market (“semi” or the “semi market”) which includes both the broader semiconductor market, as well as the more specialized automated test equipment (“ATE”) and wafer production sectors within the broader semiconductor market, has historically been the largest single market in which we operate. The semi market is characterized by rapid technological change, competitive pricing pressures and cyclical as well as seasonal market patterns. The semi market is also subject to periods of significant expansion or contraction in demand. In addition to the semi market, we sell into a variety of other markets. Our intention is to continue diversifying our markets, our product offerings within the markets we serve and our customer base across all of our markets with the goal of reducing our dependence on any one market, product or customer. In particular, we are seeking to reduce the impact of volatility in the semi market on our results of operations.

 

Our Electronic Test segment sells many of its products to semiconductor manufacturers and third-party test and assembly houses (end user sales) and to ATE manufacturers (original equipment manufacturer (“OEM”) sales), who ultimately resell our equipment with theirs to both semiconductor manufacturers and third-party test and assembly houses. These sales all fall within the ATE sector of the semi market. With the acquisition of Acculogic Inc. and its affiliates (“Acculogic”) in December 2021, and Alfamation in March 2024, our Electronic Test segment also sells its products to customers in markets outside the semi market including the automotive, defense/aerospace, industrial and life sciences and specialty consumer electronics markets. Our Environmental Technologies segment sells its products to end users and OEMs within the ATE sector of the semi market. It also sells its products to customers in a variety of other markets other than the semi market, including the automotive, defense/aerospace, industrial and life sciences markets. Our Process Technologies segment sells its products to customers in the wafer production sector within the semi market. It also sells its products to customers in a variety of other markets other than the semi market, including the automotive, defense/aerospace, industrial, life sciences and security markets.

 

Our financial results are affected by a wide variety of factors, including, but not limited to, general economic conditions worldwide and in the markets in which we operate, economic conditions specific to the semi market and the other markets we serve, downward pricing pressures from customers, our reliance on a relatively few number of customers for a significant portion of our sales and our ability to safeguard patented technology and intellectual property in a rapidly evolving market. In addition, we are exposed to the risk of obsolescence of our inventory depending on the mix of future business and technological changes within the markets that we serve. Part of our strategy for growth includes potential acquisitions that may cause us to incur substantial expense in reviewing and evaluating potential transactions. We may or may not be successful in locating suitable businesses to acquire and in closing acquisitions of businesses we pursue. In addition, we may not be able to successfully integrate any business we do acquire with our existing business and we may not be able to operate the acquired business profitably. As a result of these or other factors, we may experience significant period-to-period fluctuations in future operating results.

 

On May 11, 2023, we entered into an At-the-Market Issuance Sales Agreement (the "Sales Agreement") pursuant to which we issued and sold 921,797 shares of our common stock having an aggregate offering price of $20,000 between May 11, 2023 and May 31, 2023. We received net proceeds from the sale of these shares of $19,244 after payment of commissions of 3.0% of the gross proceeds and other fees related to the sale of these shares.

XML 20 R9.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 2 - Summary of Significant Accounting Policies
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Significant Accounting Policies [Text Block]

(2)

SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES

 

Basis of Presentation and Use of Estimates

 

The accompanying consolidated financial statements include our accounts and those of our wholly owned subsidiaries. All significant intercompany accounts and transactions have been eliminated upon consolidation. The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America ("U.S. GAAP") requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates. Certain of our accounts, including contingent consideration, inventories, long-lived assets, goodwill, identifiable intangibles and deferred tax assets and liabilities, including related valuation allowances, are particularly impacted by estimates.

 

In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments (consisting only of normal recurring adjustments) necessary to present fairly the financial position, results of operations, and changes in cash flows for the interim periods presented. Certain footnote information has been condensed or omitted from these consolidated financial statements. Therefore, these consolidated financial statements should be read in conjunction with the consolidated financial statements and accompanying footnotes included in our Annual Report on Form 10-K for the year ended December 31, 2023 (the “2023 Form 10-K”) filed on March 27, 2024 with the Securities and Exchange Commission.

 

Reclassification

Certain prior period amounts have been reclassified to be comparable with the current period's presentation. 

 

Subsequent Events

We have made an assessment of our operations and determined that there were no material subsequent events requiring adjustment to, or disclosure in, our consolidated financial statements for the three months ended March 31, 2024 other than the matter discussed in Note 15.

 

Business Combinations

Acquired businesses are accounted for using the purchase method of accounting, which requires that the purchase price be allocated to the net assets acquired at their respective fair values. Any excess of the purchase price over the estimated fair values of the net assets acquired is recorded as goodwill. Fair values of intangible assets are estimated by valuation models prepared by our management and third-party advisors. The assets purchased and liabilities assumed have been reflected in our consolidated balance sheets, and the operating results are included in the consolidated statements of operations and consolidated statements of cash flows from the date of acquisition. Any change in the fair value of acquisition-related contingent consideration subsequent to the acquisition date, including changes from events after the acquisition date, will be recognized in the consolidated statement of operations in the period of the estimated fair value change. Acquisition-related transaction costs, including legal and accounting fees and other external costs directly related to the acquisition, are recognized separately from the acquisition and expensed as incurred in general and administrative expense in the consolidated statements of operations.

 

Cash, Cash Equivalents and Restricted Cash

 

Short-term investments that have maturities of three months or less when purchased are considered to be cash equivalents and are carried at cost, which approximates fair value. Our cash balances, which are deposited with highly reputable financial institutions, at times may exceed the federally insured limits. We have not experienced any losses related to these cash balances and believe the credit risk to be minimal.

 

Periodically we have restricted cash which represents amounts deposited at our banks to support bank guarantees which certain of our customers require as a condition of paying large deposits on orders they place with us. Typically, the amount of the deposit and related guarantee declines as shipments are made against the order. At March 31, 2024 and December 31, 2023, we had no amounts classified as restricted cash.

 

Trade Accounts Receivable and Allowance for Credit Losses

 

Trade accounts receivable are recorded at the invoiced amount and do not bear interest. We grant credit to customers and generally require no collateral. To minimize our risk, we perform ongoing credit evaluations of our customers' financial condition. As discussed below under “Effect of Recently Adopted Amendments to Authoritative Accounting Guidance”, effective January 1, 2023, we follow the guidance in Accounting Standards Codification (“ASC”) Topic 326 (Financial Instruments – Credit Losses) in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. In establishing the amount of allowance for credit losses, we consider all information available as of the reporting date including information related to past events, such as historical loss rates and actual incurred losses, as well as current conditions that may indicate future risk of loss and any other factors of which we are aware, that we believe could impact the ultimate collectability of the related receivables in future periods.

 

Account balances are charged off against the allowance after all means of collection have been exhausted and the potential for recovery is considered remote. We do not have any significant off-balance sheet credit exposure related to our customers. Cash flows from accounts receivable are recorded in operating cash flows.

 

For the three months ended March 31, 2024, we utilized $48 of the allowance for credit losses to offset the write-off of a receivable in our Electronic Test segment. There were no other significant changes in the amount of the allowance for credit losses during this time period. There was no bad debt expense recorded for the three months ended March 31, 2024 or 2023.

 

Fair Value of Financial Instruments

 

Our financial instruments include cash and cash equivalents, restricted cash, short-term investments, accounts receivable, accounts payable, accrued expenses, our credit facility, interest rate swaps and our liabilities for contingent consideration. Our cash and cash equivalents, accounts receivable, accounts payable and accrued expenses are carried at cost which approximates fair value, due to the short maturities of the accounts. Our short-term investments are classified as held-to-maturity and carried at amortized cost. Our credit facility and our interest rate swap are discussed further below and in Note 10. Our liabilities for contingent consideration are accounted for in accordance with the guidance in ASC Topic 820 (Fair Value Measurement). ASC Topic 820 establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Our contingent consideration liabilities are measured at fair value on a recurring basis using Level 3 inputs which are inputs that are unobservable and significant to the overall fair value measurement. These unobservable inputs reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. See Note 4 for further disclosures related to the fair value of our liabilities for contingent consideration.

 

Goodwill, Intangible and Long-Lived Assets

 

We have three reportable segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies.

 

We account for goodwill and intangible assets in accordance with ASC Topic 350 (Intangibles - Goodwill and Other). Finite-lived intangible assets are amortized over their estimated useful economic life and are carried at cost less accumulated amortization. Goodwill is assessed for impairment annually at the beginning of the fourth quarter on a reporting unit basis, or more frequently when events and circumstances occur indicating that the recorded goodwill may be impaired. Goodwill is considered to be impaired if the fair value of a reporting unit is less than its carrying amount. As a part of the goodwill impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more-likely-than-not that the fair value of a reporting unit is less than its carrying amount. If, as a result of our qualitative assessment, we determine that it is more-likely-than-not that the fair value of the reporting unit is greater than its carrying amount, a quantitative goodwill impairment test is not required. However, if, as a result of our qualitative assessment, we determine it is more-likely-than-not that the fair value of a reporting unit is less than its carrying amount, or, if we choose not to perform a qualitative assessment, we are required to perform a quantitative goodwill impairment test to identify potential goodwill impairment and measure the amount of goodwill impairment loss to be recognized. 

 

The quantitative goodwill impairment test compares the fair value of a reporting unit with its carrying amount, including goodwill. If the fair value of a reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. If the carrying amount of a reporting unit exceeds its fair value, an impairment loss will be recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit. The goodwill impairment assessment is based upon the income approach, which estimates the fair value of our reporting units based upon a discounted cash flow approach. This fair value is then reconciled to our market capitalization at year end with an appropriate control premium. The determination of the fair value of our reporting units requires management to make significant estimates and assumptions including the selection of control premiums, discount rates, terminal growth rates, forecasts of revenue and expense growth rates, income tax rates, changes in working capital, depreciation, amortization and capital expenditures. Changes in assumptions concerning future financial results or other underlying assumptions could have a significant impact on either the fair value of the reporting unit or the amount of the goodwill impairment charge.

 

Indefinite-lived intangible assets are assessed for impairment annually at the beginning of the fourth quarter, or more frequently if events or changes in circumstances indicate that the asset might be impaired. As a part of the impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more likely than not that an indefinite-lived intangible asset is impaired. If, as a result of our qualitative assessment, we determine that it is more-likely-than-not that the fair value of the indefinite-lived intangible asset is less than its carrying amount, the quantitative impairment test is required; otherwise, no further testing is required. The quantitative impairment test consists of a comparison of the fair value of the intangible asset with its carrying amount. If the carrying amount of the intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess.

 

Long-lived assets, which consist of finite-lived intangible assets, property and equipment and right-of-use (“ROU”) assets, are assessed for impairment whenever events or changes in business circumstances indicate that the carrying amount of the assets may not be fully recoverable or that the useful lives of these assets are no longer appropriate. Each impairment test is based on a comparison of the estimated undiscounted cash flows to the recorded value of the asset group. If impairment is indicated, the asset group is written down to its estimated fair value. The cash flow estimates used to determine the impairment, if any, contain management's best estimates using appropriate assumptions and projections at that time. 

 

Revenue Recognition

We recognize revenue in accordance with the guidance in ASC Topic 606 (Revenue from Contracts with Customers). We recognize revenue for the sale of products or services when our performance obligations under the terms of a contract with a customer are satisfied and control of the product or service has been transferred to the customer. Generally, this occurs when we ship a product or perform a service. In certain cases, recognition of revenue is deferred until the product is received by the customer or at some other point in the future when we have determined that we have satisfied our performance obligations under the contract. Our contracts with customers may include a combination of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. In addition to the sale of products and services, we also lease certain of our equipment to customers under short-term lease agreements. We recognize revenue from equipment leases on a straight-line basis over the lease term.

 

Revenue is recorded in an amount that reflects the consideration we expect to receive in exchange for those products or services. We do not have any material variable consideration arrangements, or any material payment terms with our customers other than standard payment terms which generally range from net 30 to net 90 days. We generally do not provide a right of return to our customers. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities.

 

Nature of Products and Services

 

We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing in targeted markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. Our Environmental Technologies segment sells thermal management products including ThermoStreams, ThermoChambers, process chillers, refrigerators and freezers, which we sell under our Temptronic, Sigma, Thermonics and North Sciences product lines. Our Process Technologies segment sells precision induction heating systems through our subsidiary, Ambrell Corporation (“Ambrell”), including EKOHEAT® and EASYHEAT™ products. This segment also sells industrial-grade circuit board mounted video digital cameras and related devices, systems and software through our Videology Imaging Corporation (“Videology”), subsidiary. Our Electronic Test segment sells semiconductor ATE interface solutions through our inTEST EMS (“EMS”) subsidiary, including manipulators, docking hardware and electrical interface products. This segment also sells robotics-based electronic production test equipment under the Acculogic tradename and, as a result of the acquisition of Alfamation on March 12, 2024, which is discussed further in Note 3, this segment now sells test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. We provide post-warranty service and support for the equipment we sell. We sell our products to various markets including the automotive, defense/aerospace, industrial, life sciences, security and semiconductor markets.

 

We lease certain of our equipment under short-term leasing agreements with original lease terms of six months or less. Our lease agreements do not contain purchase options.

 

Occasionally we procure and sell materials/components on behalf of and to our customers.

 

Types of Contracts with Customers

 

Our contracts with customers are generally structured as individual purchase orders which specify the exact products or services being sold or equipment being leased along with the selling price, service fee or monthly lease amount for each individual item on the purchase order. Payment terms and any other customer-specific acceptance criteria are also specified on the purchase order. We generally do not have any customer-specific acceptance criteria, other than that the product performs within the agreed upon specifications. We test substantially all products manufactured as part of our quality assurance process to determine that they comply with specifications prior to shipment to a customer.

 

Contract Balances

 

We record accounts receivable at the time of invoicing. Accounts receivable, net of the allowance for credit losses, is included in current assets on our consolidated balance sheets. In certain instances, we also receive customer deposits in advance of invoicing and recording of accounts receivable. Customer deposits are included in current liabilities on our consolidated balance sheets. To the extent that we do not recognize revenue at the same time as we invoice, we record a liability for deferred revenue. Deferred revenue estimated to be recognized within the next twelve months is included in current liabilities. Deferred revenue that we estimate will be recognized beyond twelve months is recorded in Other Liabilities on our consolidated balance sheets. Any non-inventoriable costs associated with deferred revenue are also deferred and recorded in Prepaid Expenses and Other Current Assets or Other Assets on our consolidated balance sheets, depending on when the related deferred revenue is expected to be recognized.

 

As discussed above, we follow the guidance in ASC Topic 326 in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. We monitor the collectability of accounts receivable on an ongoing basis and record charges for bad debt expense in the period when we determine that a loss is expected to occur based on our assessment.
 

Costs to Obtain a Contract with a Customer

 

The only costs we incur associated with obtaining contracts with customers are sales commissions that we pay to our internal sales personnel or third-party sales representatives. These costs are calculated based on set percentages of the selling price of each product or service sold. Commissions are considered earned by our internal sales personnel at the time we recognize revenue for a particular transaction. Commissions are considered earned by third-party sales representatives at the time that revenue is recognized for a particular transaction. We record commission expense in our consolidated statements of operations at the time the commission is earned. Commissions earned but not yet paid are included in current liabilities on our balance sheets.

 

Product Warranties

 

In connection with the sale of our products, we generally provide standard one- or two-year product warranties which are detailed in our terms and conditions and communicated to our customers. Our standard warranties are not offered for sale separately from our products; therefore, there is not a separate performance obligation related to our standard warranties. We record estimated warranty expense for our standard warranties at the time of sale based upon historical claims experience. We offer customers an option to separately purchase an extended warranty on certain products. In the case of extended warranties, we recognize revenue in the amount of the sale price for the extended warranty on a straight-line basis over the extended warranty period. We record costs incurred to provide service under an extended warranty at the time the service is provided. Warranty expense is included in selling expense in our consolidated statements of operations.

 

See Notes 6 and 14 for further information about our revenue from contracts with customers.

 

Inventories

 

Inventories are valued at cost on a first-in, first-out basis, not in excess of market value. Cash flows from the sale of inventories are recorded in operating cash flows. On a quarterly basis, we review our inventories and record excess and obsolete inventory charges based upon our established objective excess and obsolete inventory criteria. Our criteria identify excess material as the quantity of material on hand that is greater than the average annual usage of that material over the prior three years. Our criteria identify obsolete material as material that has not been used in a work order during the prior twenty-four months. In certain cases, additional excess and obsolete inventory charges are recorded based upon current market conditions, anticipated product life cycles, new product introductions and expected future use of the inventory. The excess and obsolete inventory charges we record establish a new cost basis for the related inventories. We incurred excess and obsolete inventory charges of $176 and $135 for the three months ended March 31, 2024 and 2023, respectively.

 

Leases

 

We account for leases in accordance with ASC Topic 842 (Leases). We determine if an arrangement is a lease at inception. A lease contract is within scope if the contract has an identified asset (property, plant or equipment) and grants the lessee the right to control the use of the asset during the lease term. The identified asset may be either explicitly or implicitly specified in the contract. In addition, the supplier must not have any practical ability to substitute a different asset and would not economically benefit from doing so for the lease contract to be in scope. The lessee’s right to control the use of the asset during the term of the lease must include the ability to obtain substantially all of the economic benefits from the use of the asset as well as decision-making authority over how the asset will be used. Leases are classified as either operating leases or finance leases based on the guidance in ASC Topic 842. Operating leases are included in operating lease ROU assets and operating lease liabilities in our consolidated balance sheets. Finance leases are included in property and equipment and financing lease liabilities. We do not currently have any financing leases.

 

ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. None of our leases provide an implicit rate; therefore, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease. We include these options in the determination of the amount of the ROU asset and lease liability when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Certain of our operating leases contain predetermined fixed escalations of minimum rentals and rent holidays during the original lease terms. Rent holidays are periods during which we have control of the leased facility but are not obligated to pay rent. For these leases, our ROU asset and lease liability are calculated including any rent holiday in the determination of the life of the lease.

 

We have lease agreements which contain both lease and non-lease components, which are generally accounted for separately. In addition to the monthly rental payments due, most of our leases for our offices and warehouse facilities include non-lease components representing our portion of the common area maintenance, property taxes and insurance charges incurred by the landlord for the facilities which we occupy. These amounts are not included in the calculation of the ROU assets and lease liabilities as they are based on actual charges incurred in the periods to which they apply.

 

Operating lease payments are included in cash outflows from operating activities on our consolidated statements of cash flows. Amortization of ROU assets is presented separately from the change in operating lease liabilities and is included in Depreciation and Amortization on our consolidated statements of cash flows.

 

We have made an accounting policy election not to apply the recognition requirements of ASC Topic 842 to short-term leases (leases with a term of one year or less at the commencement date of the lease). Lease expense for short-term lease payments is recognized on a straight-line basis over the lease term.

 

See Note 9 for further disclosures regarding our leases.

 

Interest Rate Swap Agreement

 

We are exposed to interest rate risk on our floating-rate debt. We have entered into an interest rate swap agreement to effectively convert our floating-rate debt to a fixed-rate basis for a portion of our floating rate debt, as discussed further in Notes 4 and 10. The principal objective of this agreement is to eliminate the variability of the cash flows for interest payments associated with our floating-rate debt, thus reducing the impact of interest rate changes on future interest payment cash flows. We have elected to apply the hedge accounting rules in accordance with ASC Topic 815 (Derivatives and Hedging). Further, we have determined that this agreement qualifies for the shortcut method of hedge accounting. Changes in the fair value of interest rate swap agreements designated as cash flow hedges are recorded as a component of accumulated other comprehensive earnings (loss) within stockholders’ equity and are amortized to interest expense over the term of the related debt. 

 

Contingent Liability for Repayment of State and Local Grant Funds Received

 

In connection with leasing a facility in Rochester, New York, which our subsidiary, Ambrell, occupied in May 2018, we entered into agreements with the city of Rochester and the state of New York under which we received grants totaling $550 to help offset a portion of the cost of the leasehold improvements we made to this facility. The final payment of $87 was received during the three months ended March 31, 2022. In exchange for the funds we received under these agreements, we are required to create and maintain specified levels of employment in this location through various dates ending in 2024. If we fail to meet these employment targets, we may be required to repay a proportionate share of the proceeds. At March 31, 2024, $123 of the total proceeds received could still be required to be repaid if we do not meet the targets. We have recorded this amount as a contingent liability which is included in other liabilities on our consolidated balance sheet. Those portions of the proceeds which are no longer subject to repayment are reclassified to deferred grant proceeds and amortized to income on a straight-line basis over the remaining lease term for the Rochester facility. Deferred grant proceeds are included in other current liabilities and other liabilities on our balance sheet and totaled $298 at March 31, 2024. At March 31, 2024, we were in compliance with the employment targets as specified in the grant agreement with the city of Rochester. 

 

Stock-Based Compensation

We account for stock-based compensation in accordance with ASC Topic 718 (Compensation - Stock Compensation) which requires that employee share-based equity awards be accounted for under the fair value method and requires the use of an option pricing model for estimating fair value of stock options, which is then amortized to expense over the service periods. See further disclosures related to our stock-based compensation plans in Note 11.

 

Income Taxes

The asset and liability method is used in accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for operating loss and tax credit carryforwards and for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. A valuation allowance is recorded to reduce the carrying amounts of deferred tax assets if it is more likely than not that such assets will not be realized.

 

Earnings (Loss) Per Common Share

Earnings (loss) per common share - basic is computed by dividing net earnings (loss) by the weighted average number of common shares outstanding during each period. Earnings (loss) per common share - diluted is computed by dividing earnings (loss) by the weighted average number of common shares and common share equivalents outstanding during each period. Common share equivalents represent unvested shares of restricted stock and stock options and are calculated using the treasury stock method. Common share equivalents are excluded from the calculation if their effect is anti-dilutive.

 

The table below sets forth, for the periods indicated, a reconciliation of weighted average common shares outstanding - basic to weighted average common shares and common share equivalents outstanding - diluted and the average number of potentially dilutive securities that were excluded from the calculation of diluted earnings (loss) per share because their effect was anti-dilutive:

 

  

Three Months Ended

March 31,

 
  

2024

  

2023

 
         

Weighted average common shares outstanding–basic

  12,026,361   10,755,729 

Potentially dilutive securities:

        

Unvested shares of restricted stock and employee stock options

  131,936   332,935 

Weighted average common shares and common share equivalents outstanding–diluted

  12,158,297   11,088,664 

Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period

  434,584   154,429 

 

Effect of Recently Issued Amendments to Authoritative Accounting Guidance

 

In November 2023, the FASB issued amendments to the guidance for disclosures about reportable segments which require disclosures of significant expenses by segment and interim disclosure of items that were previously required on an annual basis. The amendments are to be applied on a retrospective basis and are effective for fiscal years beginning after December 15, 2023 and interim periods within fiscal years beginning after December 15, 2024. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.

 

In December 2023, the FASB issued amendments to the guidance for disclosures about income tax which provide for additional disclosures primarily related to the income tax rate reconciliations and income taxes paid. The amendments require entities to annually disclose the income tax rate reconciliation using both amounts and percentages, considering several categories of reconciling items, including state and local income taxes, foreign tax effects, tax credits and nontaxable or nondeductible items, among others. Disclosure of the reconciling items is subject to a quantitative threshold and disaggregation by nature and jurisdiction. The amendments also require entities to disclose net income taxes paid or received to federal, state and foreign jurisdictions, as well as by individual jurisdiction, subject to a five percent quantitative threshold. The amendments may be adopted on a prospective or retrospective basis and are effective for fiscal years beginning after December 15, 2024 with early adoption permitted. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.

XML 21 R10.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 3 - Acquisition
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Business Combination Disclosure [Text Block]

(3)

ACQUISITION

 

On March 12, 2024 we completed the acquisition of Alfamation S.p.A., an Italian joint-stock company (“Alfamation”). Alfamation is a leading global provider of state-of-the-art test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. Alfamation is included in our Electronic Test operating segment. The acquisition of Alfamation deepens our presence in the automotive/EV and life science markets, expands our exposure in consumer electronics, extends our geographic reach with a sizable footprint in Europe, and widens our portfolio of products and solutions. Additionally, we believe Alfamation brings engineering talent and a management team that culturally aligns with our mission to provide innovative, engineered solutions that address the high-value challenges of our customers. The aggregate purchase price was approximately EUR 20,000 comprised of: (i) EUR 18,000, or $19,674, in cash; and (ii) 187,432 shares of our common stock, valued at $2,086 based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542, or $593 for assets delivered at closing in excess of agreed upon thresholds. The liabilities assumed in connection with the acquisition included debt of approximately EUR 8,616, or $9,418. The debt assumed is discussed further in Note 10. Total acquisition costs incurred to complete this transaction were $1,013. Acquisition costs were expensed as incurred and included in general and administrative expense.

 

In connection with the acquisition, we have entered into a lease agreement (the “Lease Agreement”) with the former owner of Alfamation who will continue to serve as the managing director of Alfamation under our ownership. The Lease Agreement commenced on March 12, 2024 and will last for six years. It will be automatically renewed for the same period of time unless terminated by either party. Under the terms of the Lease Agreement, Alfamation will lease warehouse and office space totaling about 51,817 square feet. Alfamation will pay a yearly lease payment of EUR 260 broken up into two equal payments. At the date of the signing of the Lease Agreement, the yearly lease payment equated to approximately $284.

The acquisition of Alfamation has been accounted for as a business combination using purchase accounting, and, accordingly, the results of Alfamation have been included in our consolidated results of operations from the date of acquisition. The allocation of the purchase price for Alfamation is not yet complete. The preliminary allocation of the Alfamation purchase price was based on estimated fair values as of March 12, 2024. We are currently working with third-party valuation specialists to assist us with our purchase accounting. The information that needs to be gathered from multiple sources, including the records and personnel at Alfamation, is not yet fully assembled. As a result, the values reflected below are preliminary and we expect that they may change. In particular, we expect that the total value assigned to our technology and customer relationships and the related deferred tax liabilities, the fair value of acquired accounts receivable, inventory and certain accrued expenses may all change as we finalize our assessments. In addition, the final working capital adjustment has also not yet been completed. Adjustments to these preliminary amounts will be included in the final allocation of the purchase price for Alfamation, which we expect to finalize in the second or third quarter of 2024. These adjustments could be material.

 

The excess of the purchase price over the identifiable intangible and net tangible assets was allocated to goodwill and is not deductible for tax purposes. Goodwill is attributed to synergies that are expected to result from the operations of the combined businesses.

 

The total purchase price of $22,353 has been allocated as follows:

 

Goodwill

 $11,796 

Identifiable intangible assets

  13,087 

Tangible assets acquired and liabilities assumed:

    

Cash

  811 

Trade accounts receivable

  4,004 

Inventories

  11,243 

Other current assets

  2,169 

Property and equipment

  1,597 

Other assets

  1,650 

Accounts payable

  (4,644)

Accrued expenses

  (4,311)

Other current liabilities

  (278)

Deferred tax liability

  (2,391)

Debt (current and long-term)

  (9,418)

Other non-current liabilities

  (2,962)

Total purchase price

 $22,353 

 

We estimated the fair value of identifiable intangible assets acquired using the income approach. Identifiable intangible assets acquired include customer relationships, customer backlog, technology and a tradename. We are amortizing the finite-lived intangible assets acquired over their estimated useful lives based on the pattern in which the economic benefits of the intangible asset are expected to be consumed.

 

The following table summarizes the estimated fair value of Alfamation’s identifiable intangible assets and their estimated useful lives as of the acquisition date:

 

  

Fair

Value

  

Weighted

Average

Estimated

Useful Life

 
      

(in years)

 

Finite-lived intangible assets:

        

Customer relationships

 $5,949   15.0 

Technology

  340   10.0 

Customer backlog

  3,399   1.0 

Total finite-lived intangible assets

  9,688   9.9 
         

Indefinite-lived intangible assets:

        

Trade name

  3,399     

Total intangible assets

 $13,087     

 

For the period from March 13, 2024 to March 31, 2024, Alfamation contributed $1,379 of revenue and had a net loss of $101.

 

The following unaudited pro forma information gives effect to the acquisition of Alfamation as if the acquisition occurred on January 1, 2023. These proforma summaries do not reflect any operating efficiencies or costs savings that may be achieved by the combined businesses. These proforma summaries are presented for informational purposes only and are not necessarily indicative of what the actual results of operations would have been had the acquisition taken place as of that date, nor are they indicative of future consolidated results of operations:

 

  

Three Months Ended March 31,

 
  

2024

  

2023

 
         

Revenue

 $34,752  $38,473 

Net earnings

 $480  $3,227 

Diluted earnings per share

 $0.04  $0.29 

 

The pro forma results shown above do not reflect the impact on general and administrative expense of investment advisory costs, legal costs and other costs of $1,013 incurred by us as a direct result of the transaction.

XML 22 R11.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 4 - Fair Value Measurements
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Fair Value Disclosures [Text Block]

(4)

FAIR VALUE MEASUREMENTS

 

ASC Topic 820 (Fair Value Measurement) establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Observable inputs are inputs that market participants would use in pricing the asset or liability based on market data obtained from sources independent of us. Unobservable inputs are inputs that reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances.

 

ASC 820 identifies fair value as the exchange price, or exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering market participant assumptions in fair value measurements, ASC 820 establishes a three-tier fair value hierarchy that distinguishes among the following:

 

Level 1 Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access.

 

Level 2 Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are not active and models for which all significant inputs are observable, either directly or indirectly.

 

Level 3 Valuations based on inputs that are unobservable and significant to the overall fair value measurement.

 

To the extent that the valuation is based on models or inputs that are less observable or unobservable in the market, the determination of fair value requires more judgment. Accordingly, the degree of judgment exercised by us in determining fair value is greatest for instruments categorized in Level 3. A financial instrument's level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement.

 

Recurring Fair Value Measurements

 

The interest rate swap agreement we entered into in connection with our Term Note, as discussed further in Notes 2 and 10, is measured at fair value on a recurring basis using Level 2 inputs. The contingent consideration liability on our balance sheet is measured at fair value on a recurring basis using Level 3 inputs. Our contingent consideration liability is a result of our acquisition of Acculogic on December 21, 2021, and represents the estimated fair value of the additional cash consideration payable that is contingent upon sales to Electric Vehicle (“EV”) or battery customers. Our acquisition of Acculogic and this liability are both discussed further in Note 3 to our consolidated financial statements in our 2022 Form 10-K. The current portion of our contingent consideration liability was $247 and $0 at March 31, 2024 and December 31, 2023, respectively, and was included in Other Current Liabilities on our consolidated balance sheets.

 

The following fair value hierarchy table presents information about assets and (liabilities) measured at fair value on a recurring basis:

 

   

Amounts at

   

Fair Value Measurement Using

 
   

Fair Value

   

Level 1

   

Level 2

   

Level 3

 

As of March 31, 2024

                               

Contingent consideration liability – Acculogic

  $ (1,069 )   $ -     $ -     $ (1,069 )

Interest rate swap

  $ 271     $ -     $ 271     $ -  

 

   

Amounts at

   

Fair Value Measurement Using

 
   

Fair Value

   

Level 1

   

Level 2

   

Level 3

 

As of December 31, 2023

                               

Contingent consideration liability – Acculogic

  $ (1,093 )   $ -     $ -     $ (1,093 )

Interest rate swap

  $ 285     $ -     $ 285     $ -  

 

Changes in the fair value of our Level 3 contingent consideration liabilities for the three months ended March 31, 2024 were as follows:

 

   

Three

Months Ended

March 31, 2024

 

Balance at beginning of period

  $ 1,093  

Impact of foreign currency translation adjustments

    (24 )
         

Balance at end of period

  $ 1,069  

 

XML 23 R12.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Goodwill and Intangible Assets Disclosure [Text Block]

(5)

GOODWILL AND INTANGIBLE ASSETS

 

We have three operating segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies. Goodwill and intangible assets on our balance sheets are the result of our acquisitions.

 

Goodwill

Changes in the amount of the carrying value of goodwill for the three months ended March 31, 2024 are as follows:

 

Balance - January 1, 2024

  $ 21,728  

Acquisition of Alfamation

    11,796  

Impact of foreign currency translation adjustments

    (246 )

Balance - March 31, 2024

  $ 33,278  

 

Goodwill was comprised of the following at March 31, 2024 and December 31, 2023:

 

  

March 31,

  

December 31,

 
  

2024

  

2023

 

Electronic Test

 $15,026  $3,436 

Environmental Technologies

  1,817   1,817 

Process Technologies

  16,435   16,475 

Total goodwill

 $33,278  $21,728 

 

Intangible Assets

Changes in the amount of the carrying value of indefinite-lived intangible assets for the three months ended March 31, 2024 are as follows:

 

Balance - January 1, 2024

  $ 8,398  

Acquisition of Alfamation

    3,399  

Impact of foreign currency translation adjustments

    (66 )

Balance - March 31, 2024

  $ 11,731  

 

Changes in the amount of the carrying value of finite-lived intangible assets for the three months ended March 31, 2024 are as follows:

 

Balance - January 1, 2024

  $ 8,198  

Acquisition of Alfamation

    9,688  

Impact of foreign currency translation adjustments

    (203 )

Amortization

    (595 )

Balance - March 31, 2024

  $ 17,088  

 

Intangible assets were allocated to our reporting segments at March 31, 2024 and December 31, 2023 as follows:

 

   

March 31,

   

December 31,

 
   

2024

   

2023

 

Electronic Test

    16,357       3,728  

Environmental Technologies

    796       794  

Process Technologies

    11,666       12,074  

Total intangible assets

  $ 28,819     $ 16,596  

 

The following tables provide further detail about our intangible assets as of March 31, 2024 and December 31, 2023:

 

   

March 31, 2024

 
   

Gross

Carrying

Amount

   

Accumulated

Amortization

   

Net

Carrying

Amount

 

Finite-lived intangible assets:

                       

Customer relationships

  $ 22,202     $ 10,082     $ 12,120  

Technology

    3,195       1,504       1,691  

Patents

    590       590       -  

Backlog

    3,851       574       3,277  

Software

    270       270       -  

Trade name

    140       140       -  

Total finite-lived intangible assets

    30,248       13,160       17,088  
Indefinite-lived intangible assets:                         

Trademarks

    11,731       -       11,731  

Total intangible assets

  $ 41,979     $ 13,160     $ 28,819  

 

   

December 31, 2023

 
   

Gross
Carrying
Amount

   

Accumulated

Amortization

   

Net
Carrying
Amount

 

Finite-lived intangible assets:

                       

Customer relationships

  $ 16,407     $ 9,687     $ 6,720  

Technology

    2,895       1,417       1,478  

Patents

    590       590       -  

Backlog

    499       499       -  

Software

    270       270       -  

Trade name

    140       140       -  

Total finite-lived intangible assets

    20,801       12,603       8,198  

Indefinite-lived intangible assets:

                       

Trademarks

    8,398       -       8,398  

Total intangible assets

  $ 29,199     $ 12,603     $ 16,596  

 

We generally amortize our finite-lived intangible assets over their estimated useful lives based on the pattern in which the economic benefits of the intangible assets are expected to be consumed, or on a straight-line basis, if an alternate amortization method cannot be reliably determined. Any such alternate amortization method would be based on the pattern in which the economic benefits of the intangible asset are expected to be consumed. None of our intangible assets have any residual value.

 

The following table sets forth the estimated annual amortization expense for each of the next five years:

 

2024 (remainder)

  $ 4,384  

2025

  $ 2,863  

2026

  $ 1,577  

2027

  $ 1,083  

2028

  $ 952  

 

XML 24 R13.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 6 - Revenue From Contracts With Customers
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Revenue from Contract with Customer [Text Block]

(6)

REVENUE FROM CONTRACTS WITH CUSTOMERS

 

The following tables provide additional information about our revenue from contracts with customers, including revenue by customer and product type and revenue by market. See also Note 14 for information about revenue by operating segment and geographic region.

 

   

Three Months Ended
March 31,

 
   

2024

   

2023

 

Revenue by customer type:

               

End user

  $ 21,430     $ 21,704  

OEM/Integrator

    8,394       10,215  
    $ 29,824     $ 31,919  

Revenue by product type:

               

Thermal test

  $ 3,699     $ 5,820  

Thermal process

    10,955       9,822  

Semiconductor test

    6,282       8,105  

Video imaging

    2,119       2,648  

Flying probe and in-circuit testers

    2,744       1,160  

Alfamation products

    1,379       -  

Service/other

    2,646       4,364  
    $ 29,824     $ 31,919  

Revenue by market:

               

Semiconductor

  $ 14,967     $ 17,683  

Industrial

    4,187       3,137  

Automotive (including Electric Vehicles)

    3,958       2,597  

Life Sciences

    653       1,513  

Defense/aerospace

    3,239       2,839  

Security

    541       966  

Other

    2,279       3,184  
    $ 29,824     $ 31,919  

 

XML 25 R14.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 7 - Major Customers
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Concentration Risk Disclosure [Text Block]

(7)

MAJOR CUSTOMERS

 

During the three months ended March 31, 2024, one customer accounted for 15% of our consolidated revenue. This revenue was primarily generated by our Electronic Test segment. No other customers accounted for 10% or more of our consolidated revenue during the three months ended March 31, 2024. During the three months ended March 31, 2023, one customer accounted for 13% of our consolidated revenue. This revenue was primarily generated by our Electronic Test segment. No other customers accounted for 10% or more of our consolidated revenue during the three months ended March 31, 2023.

XML 26 R15.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 8 - Inventories
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Inventory Disclosure [Text Block]

(8)

INVENTORIES

 

Inventories held at March 31, 2024 and December 31, 2023 were comprised of the following:

 

   

March 31,

2024

   

December 31,

2023

 

Raw materials

  $ 17,104     $ 15,948  

Work in process

    9,419       1,563  

Inventory consigned to others

    114       98  

Finished goods

    4,694       2,480  

Total inventories

  $ 31,331     $ 20,089  

 

XML 27 R16.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 9 - Leases
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Lessee, Operating Leases [Text Block]

(9) 

LEASES 

 

As previously discussed in Note 2, we account for our leases in accordance with the guidance in ASC Topic 842. We lease our offices, warehouse facilities and certain equipment under non-cancellable operating leases that expire at various dates through 2031. Total operating lease and short-term lease costs for the three months ended March 31, 2024 and 2023, respectively, were as follows: 

 

  

Three Months Ended March 31,

 
  

2024

  

2023

 
         

Operating lease cost

 $451  $400 

Short-term lease cost

 $3  $3 

 

The following is additional information about our leases as of March 31, 2024:

 

Range of remaining lease terms (in years)

 .5to7.1 

Weighted average remaining lease term (in years)

  4.5  

Weighted average discount rate

  5.3%  

 

Maturities of lease liabilities as of March 31, 2024 were as follows:

 

2024

 $1,896 

2025

  1,644 

2026

  1,313 

2027

  1,093 

2028

  675 

Thereafter

  869 

Total lease payments

 $7,490 

Less imputed interest

  (829)

Total

 $6,661 

 

Cash Flow Information

 

Total amortization of ROU assets for the three months ended March 31, 2024 and 2023 was $403 and $391, respectively.

 

During the three months ended March 31, 2024 we acquired several auto leases in connection with our acquisition of Alfamation. The acquisition is discussed further in Note 3. We also entered into the Lease Agreement, described in Note 3, for the facility where Alfamation has its principal operations. This facility is owned by the seller. The leased premises include warehouse and office space totaling approximately 51,817 square feet. The yearly lease payment is EUR 260. The impact of the acquisition of these leases was a non-cash increase in our ROU assets and operating lease liabilities of approximately $1,758 at the date of the acquisition.

 

During the three months ended March 31, 2024 we also extended the lease for the facility for our Environmental Technologies segment’s operation in Singapore. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $82.

During the three months ended March 31, 2023, we entered into a 25-month lease for a facility for our Environmental Technologies segment’s operation in Germany. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $90. During this same period, we entered into a 36-month lease for a car for one of the employees of our Process Technologies segment who is based in Europe. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $30.

XML 28 R17.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 10 - Debt
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Debt Disclosure [Text Block]

(10)

DEBT

 

Letters of Credit

We have issued letters of credit as the security deposits for certain of our domestic leases. These letters of credit are secured by pledged certificates of deposit which are classified as Restricted Certificates of Deposit on our balance sheets. The terms of our leases require us to renew these letters of credit at least 30 days prior to their expiration dates for successive terms of not less than one year until lease expiration. Our outstanding letters of credit at March 31, 2024 and December 31, 2023 consisted of the following:

 

       

L/C

 

Lease

 

Letters of Credit

Amount Outstanding

 

Facility

 

Original L/C

Issue Date

 

Expiration

Date

 

Expiration

Date

 

Mar. 31,

2024

   

Dec. 31,

2023

 

Mt. Laurel, NJ

 

3/29/2010

 

4/30/2025

 

4/30/2031

  $ 50     $ 50  

Mansfield, MA

 

10/27/2010

 

12/31/2024

 

12/31/2024

    50       50  
                $ 100     $ 100  

 

Credit Facility

 

On October 15, 2021 (the “Closing Date”), we entered into an Amended and Restated Loan and Security Agreement with M&T Bank (“M&T”) which, on October 28, 2021, was amended by the Joinder and Amendment to Amended and Restated Loan and Security Agreement and which, on December 30, 2021, was further amended by the Joinder and Second Amendment to Amended and Restated Loan and Security Agreement (as amended, the “Loan Agreement”).

 

The Loan Agreement included a $25,000 non-revolving delayed draw term note (the “Term Note”) and a $10,000 revolving credit facility (the “Revolving Facility” and together with the Term Note, the “Credit Facility”). The Credit Facility had a five-year contract period that began on the Closing Date and expired on October 15, 2026, and draws under the Term Note were permissible for two years.

 

On September 20, 2022, we further amended the Loan Agreement by entering into a Third Amendment to Amended and Restated Loan and Security Agreement (the Loan Agreement, as amended by the Third Amendment, the “Third Amended Loan Agreement”) and the Third Amended and Restated Delayed Draw Term Note. Under the Third Amended Loan Agreement, the maximum loan amount that we may borrow under the Term Note increased from $25,000 to $50,500, which raises the available funding at March 31, 2024 to $30,000. On May 2, 2024 we further amended our Third Amended Loan Agreement by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we may request advances under the Term Note is extended until May 2, 2026, and the Term Note and revolving credit facility maturity date is extended from September 19, 2027 to May 2, 2031 (the “Contract Period”). At March 31, 2024, we had not borrowed any amounts under the $10 million Revolving Facility. Our borrowings under the Term Note are discussed below and occurred prior to entering into the Amended Loan Agreement. 

 

The principal balance of the Revolving Facility and the principal balance of any amount drawn under the Term Note accrues interest based on the secured overnight financing rate for U.S. government securities (“SOFR”) or a bank-defined base rate plus an applicable margin, depending on leverage. Each draw under the Term Note will have an option for us of either (i) up to a five year amortizing term loan with a balloon due at maturity, or (ii) up to a five year term with up to seven years amortization with a balloon due at maturity. Any amortization greater than five years will be subject to an excess cash flow recapture. The Amended Loan Agreement also allows us to enter into hedging contracts with M&T, including interest rate swap agreements, interest rate cap agreements, interest rate collar agreements, or any other agreements or that are designed to protect us against fluctuations in interest rates or currency exchange rates. Interest expense for the three months ended March 31, 2024 and 2023 was $140 and $182, respectively.

The Amended Loan Agreement contains customary default provisions, including but not limited to the failure by us to repay obligations when due, violation of provisions or representations provided in the Amended Loan Agreement, bankruptcy by us, suspension of our business or any of our subsidiaries and certain material judgments. After expiration of the Contract Period or if a continued event of default occurs, interest will accrue on the principal balance at a rate of 2% in excess of the then applicable nondefault interest rate. The Amended Loan Agreement includes customary affirmative, negative and financial covenants, including a maximum ratio of consolidated funded debt to consolidated EBITDA of not more than 3.0 to 1.0 and a fixed charge coverage ratio of not less than 1.25 to 1.0. Our obligations under the Amended Loan Agreement are secured by liens on substantially all of our tangible and intangible assets that are owned as of the Closing Date or acquired thereafter. At March 31, 2024, we were in compliance with all of the covenants included in the Credit Facility including the debt covenants of the Amended Loan Agreement.

 

On October 28, 2021, we drew $12,000 under the Term Note to finance the acquisition of Videology as discussed above. We also entered into an interest rate swap agreement with M&T as of this date which is designed to protect us against fluctuations in interest rates during the five year repayment and amortization period. As a result, the annual interest rate we expect to pay for this draw under the Term Note is fixed at approximately 3.2% based on current leverage.

 

On December 29, 2021, we drew $8,500 under the Term Note to finance the acquisition of Acculogic as discussed above. We did not enter into an interest rate swap agreement with M&T related to this draw. The annual interest rate we expect to pay for this draw under the Term Note is variable. At March 31, 2024, it was approximately 7.4% based on current leverage. Effective May 1, 2024, this rate had not changed.

 

The following table sets forth the maturities of the Term Note for each of the next five years:

 

2024 (remainder)

  $ 3,075  

2025

    4,100  

2026

    3,842  
    $ 11,017  

 

Alfamation Debt

 

At March 31, 2024, the total debt assumed in connection with the acquisition of Alfamation was valued at $9,420. The acquisition is discussed further in Note 3. This debt is comprised of both fixed and variable rate bank issued term loans as well as $2,130 of short-term variable rate financing backed by Alfamation’s accounts receivable. This debt is spread across a number of different institutions with monthly, quarterly or half-yearly repayment schedules. The average interest rate being paid at March 31, 2024 was 1.9% for fixed rate debt and 5.0% for variable rate debt. The average rate for total debt at March 31, 2024 was 4.0%.

 

The following table sets forth the maturities of this debt for each of the next five years:

 

2024 (remainder)

  $ 4,987  

2025

    2,085  

2026

    1,293  

2027

    807  

2028

    248  
    $ 9,420  

 

XML 29 R18.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Share-Based Payment Arrangement [Text Block]

(11) 

STOCK-BASED COMPENSATION PLAN

 

As of March 31, 2024, we had unvested restricted stock awards and stock options granted under stock-based compensation plans that are described more fully in Note 13 to the consolidated financial statements in our 2023 Form 10-K.

 

Our unvested restricted stock awards and stock options are accounted for based on their grant date fair value. As of March 31, 2024, total compensation expense to be recognized in future periods was $4,813. The weighted average period over which this expense is expected to be recognized was 2.5 years.

 

The following table summarizes the compensation expense we recorded during the three months ended March 31, 2024 and 2023 related to unvested shares of restricted stock and stock options:

 

  

Three Months Ended

March 31,

 
  

2024

  

2023

 

Cost of revenue

 $31  $19 

Selling expense

  11   10 

Engineering and product development expense

  4   10 

General and administrative expense

  303   435 
  $349  $474 

 

There was no compensation expense capitalized in three months ended March 31, 2024 or 2023. 

 

Stock Options

We record compensation expense for stock options based on the fair market value of the options as of the grant date. No option may be granted with an exercise period in excess of ten years from the date of grant. Generally, stock options will be granted with an exercise price equal to the fair market value of our stock on the date of grant and will vest over four years.

The fair value for stock options granted during the three months ended March 31, 2024 and 2023 was estimated at the date of grant using the Black-Scholes option pricing model with the following weighted average assumptions:

 

  

2024

  

2023

 

Risk-free interest rate

  3.98%  3.94%

Dividend yield

  0.00%  0.00%

Expected common stock market price volatility factor

  .57   .57 

Weighted average expected life of stock options (years)

  6.25   6.25 

 

The per share weighted average fair value of stock options issued during the three months ended March 31, 2024 and 2023 was $6.55 and $9.32, respectively.

 

The following table summarizes the activity related to stock options for the three months ended March 31, 2024:

 

  

Number

of Shares

  

Weighted

Average

Exercise Price

 

Options outstanding, January 1, 2024 (171,735 exercisable)

  505,006  $10.46 

Granted

  165,364   11.33 

Exercised

  (4,925)  3.69 

Canceled

  (23,401)  10.27 

Options outstanding, March 31, 2024 (228,364 exercisable)

  642,044   10.74 

 

Restricted Stock Awards

We record compensation expense for restricted stock awards based on the quoted market price of our stock at the grant date and amortize the expense over the vesting period. Restricted stock awards generally vest over four years for employees and over one year for our independent directors (25% at each of March 31, June 30, September 30, and December 31 of the year in which they were granted).

 

Since August 2020, we have increasingly granted performance-based restricted stock awards where the ultimate number of shares that vest can vary between 0% and 150% of the amount of the original award and is based on the achievement of specified performance metrics. Vesting for these awards is generally cliff vesting at the end of the period over which the performance metrics are measured. Compensation expense for these awards is recorded on a straight-line basis over the vesting period and is based on the expected final vesting percentage, which is re-assessed at the end of each reporting period and adjusted with a catch-up adjustment, as needed. Our initial assumption at the grant date of these awards is that the award will vest at the 100% level.

 

On March 10, 2021, we issued restricted stock awards totaling 18,000 shares to members of senior management within our operating segments. During the first quarter of 2023, 6,000 of these shares were forfeited when the individual to whom they had been granted resigned from his position with us. The remaining 12,000 shares vested on the third anniversary of the grant date at vesting percentages of 75% for 6,000 of the shares and 100% for the remaining 6,000 shares. The final vesting percentages were based on the achievement of certain performance metrics related to the operating results of the business units for which these members of management are responsible.

 

On October 1, 2021, we issued restricted stock awards totaling 5,000 shares to a member of senior management. These shares will vest on January 1, 2025 at a vesting percentage that could range from 0% to 150% of the number of shares awarded on October 1, 2021. The final vesting percentage will be based on the achievement of certain performance metrics related to our consolidated operating results. At December 31, 2023, we reduced the estimate of the final vesting percentage to 50%. At March 31, 2024, this estimate was further reduced to 0% based on our current assessment of the probable achievement against the relevant performance metrics.

 

On March 9, 2022, our CEO and CFO received restricted stock awards totaling 20,493 shares valued at $200 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on March 9, 2022. The final vesting percentage will be based on the achievement of certain performance metrics, including revenue compound annual growth rate and diluted earnings per share excluding amortization of intangibles, for specified time periods as determined by the Compensation Committee of our Board of Directors. At December 31, 2023, we reduced the estimate of the final vesting percentage to 50%. At March 31, 2024, this estimate was further reduced to 0% based on our current assessment of the probable achievement against the relevant performance metrics. 

 

On March 8, 2023, our CEO, CFO and the Division Presidents of two of our operating segments received restricted stock awards totaling 18,888 shares valued at $303 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on March 8, 2023. The final vesting percentage will be based on the achievement of certain performance metrics related to revenue for the year ending December 31, 2025 as determined by the Compensation Committee of our Board of Directors. At March 31, 2024, we have estimated that these shares will vest at 100% of the original amount based on our assessment of the probable achievement against the relevant performance metrics. 

On May 8, 2023 the newly appointed president of our Environmental Technologies segment received performance-based restricted stock awards totaling 5,081 shares valued at $108 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares of restricted stock awarded on May 8, 2023. The final vesting percentage will be based on the achievement of certain performance metrics including revenue and income from operations for specified time periods. As of March 31, 2024, we have estimated that these shares will vest at 100% of the original amount.

On January 16, 2024 the newly appointed president of our Process Technologies segment received performance-based restricted stock awards totaling 8,231 shares valued at $100 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares of restricted stock awarded on January 16, 2024. The final vesting percentage will be based on the achievement of certain performance metrics including revenue and income from operations for specified time periods. As of March 31, 2024, we have estimated that these shares will vest at 100% of the original amount.

On March 6, 2024, our CEO, CFO and the Division Presidents of our three operating segments received restricted stock awards totaling 33,539 shares valued at $380 as of the date of grant. These shares vest on the third anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on March 6, 2024. The final vesting percentage will be based on the achievement of certain performance metrics related to adjusted EBITDA for the year ended December 31, 2026 as determined by the Compensation Committee of our Board of Directors. At March 31, 2024, we have estimated that these shares will vest at 100% of the original amount based on our assessment of the probable achievement against the relevant performance metrics. 

 

The following table summarizes the activity related to unvested restricted stock awards for the three months ended March 31, 2024:

 

  

Number

of Shares

  

Weighted

Average

Grant Date

Fair Value

 

Unvested shares outstanding, January 1, 2024

  189,784  $11.51 

Granted

  138,838   11.38 

Vested

  (39,790)  11.52 

Forfeited

  (11,200)  12.29 

Unvested shares outstanding, March 31, 2024

  277,632   11.41 

 

The total fair value of the restricted stock awards that vested during the three months ended March 31, 2024 and 2023 was $463 and $381, respectively, as of the vesting dates of these awards. 

 

XML 30 R19.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 12 - Employee Stock Purchase Plan
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Employee Stock Purchase Plan [Text Block]

(12) 

EMPLOYEE STOCK PURCHASE PLAN

 

The inTEST Corporation Employee Stock Purchase Plan (the “ESPP”) was adopted by the Board in April 2021 subject to approval by our stockholders, which occurred on June 23, 2021 at our Annual Meeting of Stockholders. The ESPP provides our eligible employees with an opportunity to purchase common stock through accumulated payroll deductions at a discounted purchase price. The ESPP became effective on October 1, 2021.

 

The ESPP provides that an aggregate of up to 250,000 shares of our common stock will be available for issuance under the ESPP. The shares of our common stock purchasable under the ESPP will be shares of authorized but unissued or reacquired shares, including shares repurchased by us on the open market.

 

On March 31, 2024, employees purchased 4,104 shares of our stock through the ESPP at a cost of $46. The closing market price on the date of the purchase was $13.25. The price paid by employees was $11.26 which represented a 15% discount. The total amount of the discount of $8 was recorded as compensation expense in our consolidated statements of operations. From the effective date of the ESPP through March 31, 2024, a total of 47,037 shares of stock have been purchased by employees through the ESPP at a cost of $460. We have recorded a total of $81 of compensation expense in our consolidated statements of operations related to these shares.

 

XML 31 R20.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 13 - Employee Benefit Plans
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Retirement Benefits [Text Block]

(13) 

EMPLOYEE BENEFIT PLANS

 

We have defined contribution 401(k) plans for our employees who work in the U.S. These plans include the inTEST Corporation Incentive Savings Plan (the “inTEST Plan”) and the Ambrell Corporation Savings & Profit Sharing Plan (the "Ambrell Plan"). During the quarter ended September 30, 2023, the Ambrell Plan, which is discussed further below, was merged into the inTEST Plan.

As of March 31, 2024, all permanent employees of Acculogic Ltd, Ambrell, inTEST Corporation, inTEST EMS LLC, Temptronic Corporation and Videology, who are at least 18 years of age, are eligible to participate in the inTEST Plan. We match employee contributions dollar for dollar up to 10% of the employee's annual compensation, with a maximum limit of $5. Employer contributions vest ratably over four years. Matching contributions are discretionary. Prior to the merger with the inTEST Plan, all permanent employees of Ambrell were immediately eligible to participate in the Ambrell Plan upon employment and were eligible for employer matching contributions after completing six months of service, as defined in the Ambrell Plan. The Ambrell Plan allowed eligible employees to make voluntary contributions up to 100% of compensation, up to the federal government contribution limits. We made a matching contribution of 50% of each employee's contributions up to a maximum of 10% of the employee's deferral with a maximum limit of $5.

 

For the three months ended March 31, 2024 and 2023, we recorded expense for matching contributions to both plans of $389 and $372, respectively.

Employees of Alfamation in Italy are entitled to Trattamento di Fine Rapporto (“TFR”), commonly referred to as an employee leaving indemnity, which represents deferred compensation for employees. Under Italian law, an entity is obligated to accrue for TFR on an individual employee basis payable to each individual upon termination of employment (including both voluntary and involuntary dismissal). The expense is recognized in personnel costs in our consolidated statements of operations and the required accrual is included in Other Liabilities on our consolidated balance sheets. At March 31, 2024, the amount recorded in Other Liabilities for TFR was $1,596.

 

XML 32 R21.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Segment Reporting Disclosure [Text Block]

(14) 

SEGMENT INFORMATION

 

We have three operating segments which are also our reportable segments and reporting units: Electronic Test (which includes our semiconductor test equipment, flying probe and in-circuit testers and the operations of Alfamation which we acquired on March 12, 2024 as discussed further in Note 3), Environmental Technologies (which includes our thermal test, process and storage products) and Process Technologies (which includes our induction heating and video imaging products). We operate our business worldwide and sell our products both domestically and internationally. All of our segments sell to semiconductor manufacturers, third-party test and assembly houses and ATE manufacturers and to a variety of markets outside of the semi market, including the automotive, defense/aerospace, industrial, life sciences, security and other markets.

 

Our management team, including our CEO who is also our Chief Operating Decision Maker as defined under U.S. GAAP, evaluates the performance of our operating segments primarily on income from divisional operations which represents earnings before income tax expense and excludes interest expense, other income (expense), corporate expenses and acquired intangible amortization.

 

   

Three Months Ended

March 31,

 
   

2024

   

2023

 

Revenue:

               

Electronic Test

  $ 11,116     $ 10,371  

Environmental Technologies

    6,828       8,042  

Process Technologies

    11,880       13,506  

Total revenue

  $ 29,824     $ 31,919  
                 

Income from divisional operations:

               

Electronic Test

  $ 1,813     $ 2,578  

Environmental Technologies

    15       1,013  

Process Technologies

    1,961       2,676  

Total income from divisional operations

    3,789       6,267  

Corporate expenses

    (2,702 )     (2,205 )

Acquired intangible amortization

    (595 )     (544 )

Interest expense

    (140 )     (182 )

Other income (expense)

    435       58  

Earnings before income tax expense

  $ 787     $ 3,394  

 

   

March 31,

   

December 31,

 
   

2024

   

2023

 

Identifiable assets:

               

Electronic Test

  $ 75,508     $ 32,505  

Environmental Technologies

    16,624       16,772  

Process Technologies

    57,815       56,842  

Corporate

    9,580       28,710  
    $ 159,527     $ 134,829  

 

The following table provides information about our geographic areas of operation. Revenue is based on the location to which the goods are shipped.

 

   

Three Months Ended
March 31,

 
   

2024

   

2023

 

Revenue:

               

U.S.

  $ 10,477     $ 11,090  

Foreign

    19,347       20,829  
    $ 29,824     $ 31,919  

 

   

March 31,

   

December 31,

 
   

2024

   

2023

 

Property and equipment:

               

U.S.

  $ 2,502     $ 2,502  

Foreign

    2,269       688  
    $ 4,771     $ 3,190  

 

XML 33 R22.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 15 - Subsequent Event
3 Months Ended
Mar. 31, 2024
Notes to Financial Statements  
Subsequent Events [Text Block]

(15) 

SUBSEQUENT EVENT 

 

On May 2, 2024 we further amended our Loan Agreement with M&T, which is discussed in Note 10, by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we may request advances under the Term Note is extended until May 2, 2026, and the Term Note and revolving credit facility maturity date is extended from September 19, 2027 to May 2, 2031.

XML 34 R23.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Insider Trading Arrangements
3 Months Ended
Mar. 31, 2024
Insider Trading Arr Line Items  
Material Terms of Trading Arrangement [Text Block]

Item 5.

Other Information

 

During the first quarter ended March 31, 2024, none of the Company's directors or officers (as defined in Section 16 of the Securities Exchange Act of 1934) adopted or terminated a "Rule 10b5-1 trading arrangement" or a "non-Rule 10b5-1 trading arrangement," as each term is defined in Item 408(a) of Regulation S-K of the Securities Exchange Act of 1934.

Rule 10b5-1 Arrangement Adopted [Flag] false
Non-Rule 10b5-1 Arrangement Adopted [Flag] false
Rule 10b5-1 Arrangement Terminated [Flag] false
Non-Rule 10b5-1 Arrangement Terminated [Flag] false
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Significant Accounting Policies (Policies)
3 Months Ended
Mar. 31, 2024
Accounting Policies [Abstract]  
Basis Of Presentation And Use Of Estimates [Policy Text Block]

Basis of Presentation and Use of Estimates

 

The accompanying consolidated financial statements include our accounts and those of our wholly owned subsidiaries. All significant intercompany accounts and transactions have been eliminated upon consolidation. The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America ("U.S. GAAP") requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates. Certain of our accounts, including contingent consideration, inventories, long-lived assets, goodwill, identifiable intangibles and deferred tax assets and liabilities, including related valuation allowances, are particularly impacted by estimates.

 

In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments (consisting only of normal recurring adjustments) necessary to present fairly the financial position, results of operations, and changes in cash flows for the interim periods presented. Certain footnote information has been condensed or omitted from these consolidated financial statements. Therefore, these consolidated financial statements should be read in conjunction with the consolidated financial statements and accompanying footnotes included in our Annual Report on Form 10-K for the year ended December 31, 2023 (the “2023 Form 10-K”) filed on March 27, 2024 with the Securities and Exchange Commission.

 

Reclassification, Comparability Adjustment [Policy Text Block]

Reclassification

Certain prior period amounts have been reclassified to be comparable with the current period's presentation. 

 

Subsequent Events, Policy [Policy Text Block]

Subsequent Events

We have made an assessment of our operations and determined that there were no material subsequent events requiring adjustment to, or disclosure in, our consolidated financial statements for the three months ended March 31, 2024 other than the matter discussed in Note 15.

 

Business Combinations Policy [Policy Text Block]

Business Combinations

Acquired businesses are accounted for using the purchase method of accounting, which requires that the purchase price be allocated to the net assets acquired at their respective fair values. Any excess of the purchase price over the estimated fair values of the net assets acquired is recorded as goodwill. Fair values of intangible assets are estimated by valuation models prepared by our management and third-party advisors. The assets purchased and liabilities assumed have been reflected in our consolidated balance sheets, and the operating results are included in the consolidated statements of operations and consolidated statements of cash flows from the date of acquisition. Any change in the fair value of acquisition-related contingent consideration subsequent to the acquisition date, including changes from events after the acquisition date, will be recognized in the consolidated statement of operations in the period of the estimated fair value change. Acquisition-related transaction costs, including legal and accounting fees and other external costs directly related to the acquisition, are recognized separately from the acquisition and expensed as incurred in general and administrative expense in the consolidated statements of operations.

 

Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]

Cash, Cash Equivalents and Restricted Cash

 

Short-term investments that have maturities of three months or less when purchased are considered to be cash equivalents and are carried at cost, which approximates fair value. Our cash balances, which are deposited with highly reputable financial institutions, at times may exceed the federally insured limits. We have not experienced any losses related to these cash balances and believe the credit risk to be minimal.

 

Periodically we have restricted cash which represents amounts deposited at our banks to support bank guarantees which certain of our customers require as a condition of paying large deposits on orders they place with us. Typically, the amount of the deposit and related guarantee declines as shipments are made against the order. At March 31, 2024 and December 31, 2023, we had no amounts classified as restricted cash.

 

Receivable [Policy Text Block]

Trade Accounts Receivable and Allowance for Credit Losses

 

Trade accounts receivable are recorded at the invoiced amount and do not bear interest. We grant credit to customers and generally require no collateral. To minimize our risk, we perform ongoing credit evaluations of our customers' financial condition. As discussed below under “Effect of Recently Adopted Amendments to Authoritative Accounting Guidance”, effective January 1, 2023, we follow the guidance in Accounting Standards Codification (“ASC”) Topic 326 (Financial Instruments – Credit Losses) in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. In establishing the amount of allowance for credit losses, we consider all information available as of the reporting date including information related to past events, such as historical loss rates and actual incurred losses, as well as current conditions that may indicate future risk of loss and any other factors of which we are aware, that we believe could impact the ultimate collectability of the related receivables in future periods.

 

Account balances are charged off against the allowance after all means of collection have been exhausted and the potential for recovery is considered remote. We do not have any significant off-balance sheet credit exposure related to our customers. Cash flows from accounts receivable are recorded in operating cash flows.

 

For the three months ended March 31, 2024, we utilized $48 of the allowance for credit losses to offset the write-off of a receivable in our Electronic Test segment. There were no other significant changes in the amount of the allowance for credit losses during this time period. There was no bad debt expense recorded for the three months ended March 31, 2024 or 2023.

 

Fair Value Measurement, Policy [Policy Text Block]

Fair Value of Financial Instruments

 

Our financial instruments include cash and cash equivalents, restricted cash, short-term investments, accounts receivable, accounts payable, accrued expenses, our credit facility, interest rate swaps and our liabilities for contingent consideration. Our cash and cash equivalents, accounts receivable, accounts payable and accrued expenses are carried at cost which approximates fair value, due to the short maturities of the accounts. Our short-term investments are classified as held-to-maturity and carried at amortized cost. Our credit facility and our interest rate swap are discussed further below and in Note 10. Our liabilities for contingent consideration are accounted for in accordance with the guidance in ASC Topic 820 (Fair Value Measurement). ASC Topic 820 establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Our contingent consideration liabilities are measured at fair value on a recurring basis using Level 3 inputs which are inputs that are unobservable and significant to the overall fair value measurement. These unobservable inputs reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. See Note 4 for further disclosures related to the fair value of our liabilities for contingent consideration.

 

Goodwill Intangible And Long Lived Assets [Policy Text Block]

Goodwill, Intangible and Long-Lived Assets

 

We have three reportable segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies.

 

We account for goodwill and intangible assets in accordance with ASC Topic 350 (Intangibles - Goodwill and Other). Finite-lived intangible assets are amortized over their estimated useful economic life and are carried at cost less accumulated amortization. Goodwill is assessed for impairment annually at the beginning of the fourth quarter on a reporting unit basis, or more frequently when events and circumstances occur indicating that the recorded goodwill may be impaired. Goodwill is considered to be impaired if the fair value of a reporting unit is less than its carrying amount. As a part of the goodwill impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more-likely-than-not that the fair value of a reporting unit is less than its carrying amount. If, as a result of our qualitative assessment, we determine that it is more-likely-than-not that the fair value of the reporting unit is greater than its carrying amount, a quantitative goodwill impairment test is not required. However, if, as a result of our qualitative assessment, we determine it is more-likely-than-not that the fair value of a reporting unit is less than its carrying amount, or, if we choose not to perform a qualitative assessment, we are required to perform a quantitative goodwill impairment test to identify potential goodwill impairment and measure the amount of goodwill impairment loss to be recognized. 

 

The quantitative goodwill impairment test compares the fair value of a reporting unit with its carrying amount, including goodwill. If the fair value of a reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered not impaired. If the carrying amount of a reporting unit exceeds its fair value, an impairment loss will be recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit. The goodwill impairment assessment is based upon the income approach, which estimates the fair value of our reporting units based upon a discounted cash flow approach. This fair value is then reconciled to our market capitalization at year end with an appropriate control premium. The determination of the fair value of our reporting units requires management to make significant estimates and assumptions including the selection of control premiums, discount rates, terminal growth rates, forecasts of revenue and expense growth rates, income tax rates, changes in working capital, depreciation, amortization and capital expenditures. Changes in assumptions concerning future financial results or other underlying assumptions could have a significant impact on either the fair value of the reporting unit or the amount of the goodwill impairment charge.

 

Indefinite-lived intangible assets are assessed for impairment annually at the beginning of the fourth quarter, or more frequently if events or changes in circumstances indicate that the asset might be impaired. As a part of the impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more likely than not that an indefinite-lived intangible asset is impaired. If, as a result of our qualitative assessment, we determine that it is more-likely-than-not that the fair value of the indefinite-lived intangible asset is less than its carrying amount, the quantitative impairment test is required; otherwise, no further testing is required. The quantitative impairment test consists of a comparison of the fair value of the intangible asset with its carrying amount. If the carrying amount of the intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess.

 

Long-lived assets, which consist of finite-lived intangible assets, property and equipment and right-of-use (“ROU”) assets, are assessed for impairment whenever events or changes in business circumstances indicate that the carrying amount of the assets may not be fully recoverable or that the useful lives of these assets are no longer appropriate. Each impairment test is based on a comparison of the estimated undiscounted cash flows to the recorded value of the asset group. If impairment is indicated, the asset group is written down to its estimated fair value. The cash flow estimates used to determine the impairment, if any, contain management's best estimates using appropriate assumptions and projections at that time. 

 

Revenue [Policy Text Block]

Revenue Recognition

We recognize revenue in accordance with the guidance in ASC Topic 606 (Revenue from Contracts with Customers). We recognize revenue for the sale of products or services when our performance obligations under the terms of a contract with a customer are satisfied and control of the product or service has been transferred to the customer. Generally, this occurs when we ship a product or perform a service. In certain cases, recognition of revenue is deferred until the product is received by the customer or at some other point in the future when we have determined that we have satisfied our performance obligations under the contract. Our contracts with customers may include a combination of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. In addition to the sale of products and services, we also lease certain of our equipment to customers under short-term lease agreements. We recognize revenue from equipment leases on a straight-line basis over the lease term.

 

Revenue is recorded in an amount that reflects the consideration we expect to receive in exchange for those products or services. We do not have any material variable consideration arrangements, or any material payment terms with our customers other than standard payment terms which generally range from net 30 to net 90 days. We generally do not provide a right of return to our customers. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities.

 

Nature of Products and Services

 

We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing in targeted markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. Our Environmental Technologies segment sells thermal management products including ThermoStreams, ThermoChambers, process chillers, refrigerators and freezers, which we sell under our Temptronic, Sigma, Thermonics and North Sciences product lines. Our Process Technologies segment sells precision induction heating systems through our subsidiary, Ambrell Corporation (“Ambrell”), including EKOHEAT® and EASYHEAT™ products. This segment also sells industrial-grade circuit board mounted video digital cameras and related devices, systems and software through our Videology Imaging Corporation (“Videology”), subsidiary. Our Electronic Test segment sells semiconductor ATE interface solutions through our inTEST EMS (“EMS”) subsidiary, including manipulators, docking hardware and electrical interface products. This segment also sells robotics-based electronic production test equipment under the Acculogic tradename and, as a result of the acquisition of Alfamation on March 12, 2024, which is discussed further in Note 3, this segment now sells test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. We provide post-warranty service and support for the equipment we sell. We sell our products to various markets including the automotive, defense/aerospace, industrial, life sciences, security and semiconductor markets.

 

We lease certain of our equipment under short-term leasing agreements with original lease terms of six months or less. Our lease agreements do not contain purchase options.

 

Occasionally we procure and sell materials/components on behalf of and to our customers.

 

Types of Contracts with Customers

 

Our contracts with customers are generally structured as individual purchase orders which specify the exact products or services being sold or equipment being leased along with the selling price, service fee or monthly lease amount for each individual item on the purchase order. Payment terms and any other customer-specific acceptance criteria are also specified on the purchase order. We generally do not have any customer-specific acceptance criteria, other than that the product performs within the agreed upon specifications. We test substantially all products manufactured as part of our quality assurance process to determine that they comply with specifications prior to shipment to a customer.

 

Contract Balances

 

We record accounts receivable at the time of invoicing. Accounts receivable, net of the allowance for credit losses, is included in current assets on our consolidated balance sheets. In certain instances, we also receive customer deposits in advance of invoicing and recording of accounts receivable. Customer deposits are included in current liabilities on our consolidated balance sheets. To the extent that we do not recognize revenue at the same time as we invoice, we record a liability for deferred revenue. Deferred revenue estimated to be recognized within the next twelve months is included in current liabilities. Deferred revenue that we estimate will be recognized beyond twelve months is recorded in Other Liabilities on our consolidated balance sheets. Any non-inventoriable costs associated with deferred revenue are also deferred and recorded in Prepaid Expenses and Other Current Assets or Other Assets on our consolidated balance sheets, depending on when the related deferred revenue is expected to be recognized.

 

As discussed above, we follow the guidance in ASC Topic 326 in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. We monitor the collectability of accounts receivable on an ongoing basis and record charges for bad debt expense in the period when we determine that a loss is expected to occur based on our assessment.
 

Costs to Obtain a Contract with a Customer

 

The only costs we incur associated with obtaining contracts with customers are sales commissions that we pay to our internal sales personnel or third-party sales representatives. These costs are calculated based on set percentages of the selling price of each product or service sold. Commissions are considered earned by our internal sales personnel at the time we recognize revenue for a particular transaction. Commissions are considered earned by third-party sales representatives at the time that revenue is recognized for a particular transaction. We record commission expense in our consolidated statements of operations at the time the commission is earned. Commissions earned but not yet paid are included in current liabilities on our balance sheets.

 

Product Warranties

 

In connection with the sale of our products, we generally provide standard one- or two-year product warranties which are detailed in our terms and conditions and communicated to our customers. Our standard warranties are not offered for sale separately from our products; therefore, there is not a separate performance obligation related to our standard warranties. We record estimated warranty expense for our standard warranties at the time of sale based upon historical claims experience. We offer customers an option to separately purchase an extended warranty on certain products. In the case of extended warranties, we recognize revenue in the amount of the sale price for the extended warranty on a straight-line basis over the extended warranty period. We record costs incurred to provide service under an extended warranty at the time the service is provided. Warranty expense is included in selling expense in our consolidated statements of operations.

 

See Notes 6 and 14 for further information about our revenue from contracts with customers.

 

Inventory, Policy [Policy Text Block]

Inventories

 

Inventories are valued at cost on a first-in, first-out basis, not in excess of market value. Cash flows from the sale of inventories are recorded in operating cash flows. On a quarterly basis, we review our inventories and record excess and obsolete inventory charges based upon our established objective excess and obsolete inventory criteria. Our criteria identify excess material as the quantity of material on hand that is greater than the average annual usage of that material over the prior three years. Our criteria identify obsolete material as material that has not been used in a work order during the prior twenty-four months. In certain cases, additional excess and obsolete inventory charges are recorded based upon current market conditions, anticipated product life cycles, new product introductions and expected future use of the inventory. The excess and obsolete inventory charges we record establish a new cost basis for the related inventories. We incurred excess and obsolete inventory charges of $176 and $135 for the three months ended March 31, 2024 and 2023, respectively.

 

Lessee, Leases [Policy Text Block]

Leases

 

We account for leases in accordance with ASC Topic 842 (Leases). We determine if an arrangement is a lease at inception. A lease contract is within scope if the contract has an identified asset (property, plant or equipment) and grants the lessee the right to control the use of the asset during the lease term. The identified asset may be either explicitly or implicitly specified in the contract. In addition, the supplier must not have any practical ability to substitute a different asset and would not economically benefit from doing so for the lease contract to be in scope. The lessee’s right to control the use of the asset during the term of the lease must include the ability to obtain substantially all of the economic benefits from the use of the asset as well as decision-making authority over how the asset will be used. Leases are classified as either operating leases or finance leases based on the guidance in ASC Topic 842. Operating leases are included in operating lease ROU assets and operating lease liabilities in our consolidated balance sheets. Finance leases are included in property and equipment and financing lease liabilities. We do not currently have any financing leases.

 

ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. None of our leases provide an implicit rate; therefore, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms may include options to extend or terminate the lease. We include these options in the determination of the amount of the ROU asset and lease liability when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Certain of our operating leases contain predetermined fixed escalations of minimum rentals and rent holidays during the original lease terms. Rent holidays are periods during which we have control of the leased facility but are not obligated to pay rent. For these leases, our ROU asset and lease liability are calculated including any rent holiday in the determination of the life of the lease.

 

We have lease agreements which contain both lease and non-lease components, which are generally accounted for separately. In addition to the monthly rental payments due, most of our leases for our offices and warehouse facilities include non-lease components representing our portion of the common area maintenance, property taxes and insurance charges incurred by the landlord for the facilities which we occupy. These amounts are not included in the calculation of the ROU assets and lease liabilities as they are based on actual charges incurred in the periods to which they apply.

 

Operating lease payments are included in cash outflows from operating activities on our consolidated statements of cash flows. Amortization of ROU assets is presented separately from the change in operating lease liabilities and is included in Depreciation and Amortization on our consolidated statements of cash flows.

 

We have made an accounting policy election not to apply the recognition requirements of ASC Topic 842 to short-term leases (leases with a term of one year or less at the commencement date of the lease). Lease expense for short-term lease payments is recognized on a straight-line basis over the lease term.

 

See Note 9 for further disclosures regarding our leases.

 

Derivatives, Policy [Policy Text Block]

Interest Rate Swap Agreement

 

We are exposed to interest rate risk on our floating-rate debt. We have entered into an interest rate swap agreement to effectively convert our floating-rate debt to a fixed-rate basis for a portion of our floating rate debt, as discussed further in Notes 4 and 10. The principal objective of this agreement is to eliminate the variability of the cash flows for interest payments associated with our floating-rate debt, thus reducing the impact of interest rate changes on future interest payment cash flows. We have elected to apply the hedge accounting rules in accordance with ASC Topic 815 (Derivatives and Hedging). Further, we have determined that this agreement qualifies for the shortcut method of hedge accounting. Changes in the fair value of interest rate swap agreements designated as cash flow hedges are recorded as a component of accumulated other comprehensive earnings (loss) within stockholders’ equity and are amortized to interest expense over the term of the related debt. 

 

Contingent Liability, Repayment of State and Local Grant Funds Received, Policy [Policy Text Block]

Contingent Liability for Repayment of State and Local Grant Funds Received

 

In connection with leasing a facility in Rochester, New York, which our subsidiary, Ambrell, occupied in May 2018, we entered into agreements with the city of Rochester and the state of New York under which we received grants totaling $550 to help offset a portion of the cost of the leasehold improvements we made to this facility. The final payment of $87 was received during the three months ended March 31, 2022. In exchange for the funds we received under these agreements, we are required to create and maintain specified levels of employment in this location through various dates ending in 2024. If we fail to meet these employment targets, we may be required to repay a proportionate share of the proceeds. At March 31, 2024, $123 of the total proceeds received could still be required to be repaid if we do not meet the targets. We have recorded this amount as a contingent liability which is included in other liabilities on our consolidated balance sheet. Those portions of the proceeds which are no longer subject to repayment are reclassified to deferred grant proceeds and amortized to income on a straight-line basis over the remaining lease term for the Rochester facility. Deferred grant proceeds are included in other current liabilities and other liabilities on our balance sheet and totaled $298 at March 31, 2024. At March 31, 2024, we were in compliance with the employment targets as specified in the grant agreement with the city of Rochester. 

 

Share-Based Payment Arrangement [Policy Text Block]

Stock-Based Compensation

We account for stock-based compensation in accordance with ASC Topic 718 (Compensation - Stock Compensation) which requires that employee share-based equity awards be accounted for under the fair value method and requires the use of an option pricing model for estimating fair value of stock options, which is then amortized to expense over the service periods. See further disclosures related to our stock-based compensation plans in Note 11.

 

Income Tax, Policy [Policy Text Block]

Income Taxes

The asset and liability method is used in accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for operating loss and tax credit carryforwards and for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. A valuation allowance is recorded to reduce the carrying amounts of deferred tax assets if it is more likely than not that such assets will not be realized.

 

Earnings Per Share, Policy [Policy Text Block]

Earnings (Loss) Per Common Share

Earnings (loss) per common share - basic is computed by dividing net earnings (loss) by the weighted average number of common shares outstanding during each period. Earnings (loss) per common share - diluted is computed by dividing earnings (loss) by the weighted average number of common shares and common share equivalents outstanding during each period. Common share equivalents represent unvested shares of restricted stock and stock options and are calculated using the treasury stock method. Common share equivalents are excluded from the calculation if their effect is anti-dilutive.

 

The table below sets forth, for the periods indicated, a reconciliation of weighted average common shares outstanding - basic to weighted average common shares and common share equivalents outstanding - diluted and the average number of potentially dilutive securities that were excluded from the calculation of diluted earnings (loss) per share because their effect was anti-dilutive:

 

  

Three Months Ended

March 31,

 
  

2024

  

2023

 
         

Weighted average common shares outstanding–basic

  12,026,361   10,755,729 

Potentially dilutive securities:

        

Unvested shares of restricted stock and employee stock options

  131,936   332,935 

Weighted average common shares and common share equivalents outstanding–diluted

  12,158,297   11,088,664 

Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period

  434,584   154,429 

 

New Accounting Pronouncements, Policy [Policy Text Block]

Effect of Recently Issued Amendments to Authoritative Accounting Guidance

 

In November 2023, the FASB issued amendments to the guidance for disclosures about reportable segments which require disclosures of significant expenses by segment and interim disclosure of items that were previously required on an annual basis. The amendments are to be applied on a retrospective basis and are effective for fiscal years beginning after December 15, 2023 and interim periods within fiscal years beginning after December 15, 2024. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.

 

In December 2023, the FASB issued amendments to the guidance for disclosures about income tax which provide for additional disclosures primarily related to the income tax rate reconciliations and income taxes paid. The amendments require entities to annually disclose the income tax rate reconciliation using both amounts and percentages, considering several categories of reconciling items, including state and local income taxes, foreign tax effects, tax credits and nontaxable or nondeductible items, among others. Disclosure of the reconciling items is subject to a quantitative threshold and disaggregation by nature and jurisdiction. The amendments also require entities to disclose net income taxes paid or received to federal, state and foreign jurisdictions, as well as by individual jurisdiction, subject to a five percent quantitative threshold. The amendments may be adopted on a prospective or retrospective basis and are effective for fiscal years beginning after December 15, 2024 with early adoption permitted. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.

XML 36 R25.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 2 - Summary of Significant Accounting Policies (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Schedule of Weighted Average Number of Shares [Table Text Block]
  

Three Months Ended

March 31,

 
  

2024

  

2023

 
         

Weighted average common shares outstanding–basic

  12,026,361   10,755,729 

Potentially dilutive securities:

        

Unvested shares of restricted stock and employee stock options

  131,936   332,935 

Weighted average common shares and common share equivalents outstanding–diluted

  12,158,297   11,088,664 

Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period

  434,584   154,429 
XML 37 R26.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 3 - Acquisition (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]

Goodwill

 $11,796 

Identifiable intangible assets

  13,087 

Tangible assets acquired and liabilities assumed:

    

Cash

  811 

Trade accounts receivable

  4,004 

Inventories

  11,243 

Other current assets

  2,169 

Property and equipment

  1,597 

Other assets

  1,650 

Accounts payable

  (4,644)

Accrued expenses

  (4,311)

Other current liabilities

  (278)

Deferred tax liability

  (2,391)

Debt (current and long-term)

  (9,418)

Other non-current liabilities

  (2,962)

Total purchase price

 $22,353 
Finite-Lived and Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]
  

Fair

Value

  

Weighted

Average

Estimated

Useful Life

 
      

(in years)

 

Finite-lived intangible assets:

        

Customer relationships

 $5,949   15.0 

Technology

  340   10.0 

Customer backlog

  3,399   1.0 

Total finite-lived intangible assets

  9,688   9.9 
         

Indefinite-lived intangible assets:

        

Trade name

  3,399     

Total intangible assets

 $13,087     
Business Acquisition, Pro Forma Information [Table Text Block]
  

Three Months Ended March 31,

 
  

2024

  

2023

 
         

Revenue

 $34,752  $38,473 

Net earnings

 $480  $3,227 

Diluted earnings per share

 $0.04  $0.29 
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 4 - Fair Value Measurements (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Fair Value, Liabilities Measured on Recurring Basis [Table Text Block]
   

Amounts at

   

Fair Value Measurement Using

 
   

Fair Value

   

Level 1

   

Level 2

   

Level 3

 

As of March 31, 2024

                               

Contingent consideration liability – Acculogic

  $ (1,069 )   $ -     $ -     $ (1,069 )

Interest rate swap

  $ 271     $ -     $ 271     $ -  
   

Amounts at

   

Fair Value Measurement Using

 
   

Fair Value

   

Level 1

   

Level 2

   

Level 3

 

As of December 31, 2023

                               

Contingent consideration liability – Acculogic

  $ (1,093 )   $ -     $ -     $ (1,093 )

Interest rate swap

  $ 285     $ -     $ 285     $ -  
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]
   

Three

Months Ended

March 31, 2024

 

Balance at beginning of period

  $ 1,093  

Impact of foreign currency translation adjustments

    (24 )
         

Balance at end of period

  $ 1,069  
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Schedule of Changes in Goodwill [Table Text Block]

Balance - January 1, 2024

  $ 21,728  

Acquisition of Alfamation

    11,796  

Impact of foreign currency translation adjustments

    (246 )

Balance - March 31, 2024

  $ 33,278  
Schedule Of Intangible Assets [Table Text Block]
  

March 31,

  

December 31,

 
  

2024

  

2023

 

Electronic Test

 $15,026  $3,436 

Environmental Technologies

  1,817   1,817 

Process Technologies

  16,435   16,475 

Total goodwill

 $33,278  $21,728 
   

March 31,

   

December 31,

 
   

2024

   

2023

 

Electronic Test

    16,357       3,728  

Environmental Technologies

    796       794  

Process Technologies

    11,666       12,074  

Total intangible assets

  $ 28,819     $ 16,596  
   

March 31, 2024

 
   

Gross

Carrying

Amount

   

Accumulated

Amortization

   

Net

Carrying

Amount

 

Finite-lived intangible assets:

                       

Customer relationships

  $ 22,202     $ 10,082     $ 12,120  

Technology

    3,195       1,504       1,691  

Patents

    590       590       -  

Backlog

    3,851       574       3,277  

Software

    270       270       -  

Trade name

    140       140       -  

Total finite-lived intangible assets

    30,248       13,160       17,088  
Indefinite-lived intangible assets:                         

Trademarks

    11,731       -       11,731  

Total intangible assets

  $ 41,979     $ 13,160     $ 28,819  
   

December 31, 2023

 
   

Gross
Carrying
Amount

   

Accumulated

Amortization

   

Net
Carrying
Amount

 

Finite-lived intangible assets:

                       

Customer relationships

  $ 16,407     $ 9,687     $ 6,720  

Technology

    2,895       1,417       1,478  

Patents

    590       590       -  

Backlog

    499       499       -  

Software

    270       270       -  

Trade name

    140       140       -  

Total finite-lived intangible assets

    20,801       12,603       8,198  

Indefinite-lived intangible assets:

                       

Trademarks

    8,398       -       8,398  

Total intangible assets

  $ 29,199     $ 12,603     $ 16,596  
Schedule of Indefinite-Lived Intangible Assets [Table Text Block]

Balance - January 1, 2024

  $ 8,398  

Acquisition of Alfamation

    3,399  

Impact of foreign currency translation adjustments

    (66 )

Balance - March 31, 2024

  $ 11,731  
Schedule of Finite-Lived Intangible Assets [Table Text Block]

Balance - January 1, 2024

  $ 8,198  

Acquisition of Alfamation

    9,688  

Impact of foreign currency translation adjustments

    (203 )

Amortization

    (595 )

Balance - March 31, 2024

  $ 17,088  
Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]

2024 (remainder)

  $ 4,384  

2025

  $ 2,863  

2026

  $ 1,577  

2027

  $ 1,083  

2028

  $ 952  
XML 40 R29.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 6 - Revenue From Contracts With Customers (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Disaggregation of Revenue [Table Text Block]
   

Three Months Ended
March 31,

 
   

2024

   

2023

 

Revenue by customer type:

               

End user

  $ 21,430     $ 21,704  

OEM/Integrator

    8,394       10,215  
    $ 29,824     $ 31,919  

Revenue by product type:

               

Thermal test

  $ 3,699     $ 5,820  

Thermal process

    10,955       9,822  

Semiconductor test

    6,282       8,105  

Video imaging

    2,119       2,648  

Flying probe and in-circuit testers

    2,744       1,160  

Alfamation products

    1,379       -  

Service/other

    2,646       4,364  
    $ 29,824     $ 31,919  

Revenue by market:

               

Semiconductor

  $ 14,967     $ 17,683  

Industrial

    4,187       3,137  

Automotive (including Electric Vehicles)

    3,958       2,597  

Life Sciences

    653       1,513  

Defense/aerospace

    3,239       2,839  

Security

    541       966  

Other

    2,279       3,184  
    $ 29,824     $ 31,919  
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 8 - Inventories (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Schedule of Inventory, Current [Table Text Block]
   

March 31,

2024

   

December 31,

2023

 

Raw materials

  $ 17,104     $ 15,948  

Work in process

    9,419       1,563  

Inventory consigned to others

    114       98  

Finished goods

    4,694       2,480  

Total inventories

  $ 31,331     $ 20,089  
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 9 - Leases (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Lease, Cost [Table Text Block]
  

Three Months Ended March 31,

 
  

2024

  

2023

 
         

Operating lease cost

 $451  $400 

Short-term lease cost

 $3  $3 

Range of remaining lease terms (in years)

 .5to7.1 

Weighted average remaining lease term (in years)

  4.5  

Weighted average discount rate

  5.3%  
Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]

2024

 $1,896 

2025

  1,644 

2026

  1,313 

2027

  1,093 

2028

  675 

Thereafter

  869 

Total lease payments

 $7,490 

Less imputed interest

  (829)

Total

 $6,661 
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 10 - Debt (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Schedule Of Outstanding Letters Of Credit [Table Text Block]
       

L/C

 

Lease

 

Letters of Credit

Amount Outstanding

 

Facility

 

Original L/C

Issue Date

 

Expiration

Date

 

Expiration

Date

 

Mar. 31,

2024

   

Dec. 31,

2023

 

Mt. Laurel, NJ

 

3/29/2010

 

4/30/2025

 

4/30/2031

  $ 50     $ 50  

Mansfield, MA

 

10/27/2010

 

12/31/2024

 

12/31/2024

    50       50  
                $ 100     $ 100  
Schedule of Maturities of Long-Term Debt [Table Text Block]

2024 (remainder)

  $ 3,075  

2025

    4,100  

2026

    3,842  
    $ 11,017  

2024 (remainder)

  $ 4,987  

2025

    2,085  

2026

    1,293  

2027

    807  

2028

    248  
    $ 9,420  
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]
  

Three Months Ended

March 31,

 
  

2024

  

2023

 

Cost of revenue

 $31  $19 

Selling expense

  11   10 

Engineering and product development expense

  4   10 

General and administrative expense

  303   435 
  $349  $474 
Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]
  

2024

  

2023

 

Risk-free interest rate

  3.98%  3.94%

Dividend yield

  0.00%  0.00%

Expected common stock market price volatility factor

  .57   .57 

Weighted average expected life of stock options (years)

  6.25   6.25 
Share-Based Payment Arrangement, Option, Activity [Table Text Block]
  

Number

of Shares

  

Weighted

Average

Exercise Price

 

Options outstanding, January 1, 2024 (171,735 exercisable)

  505,006  $10.46 

Granted

  165,364   11.33 

Exercised

  (4,925)  3.69 

Canceled

  (23,401)  10.27 

Options outstanding, March 31, 2024 (228,364 exercisable)

  642,044   10.74 
Nonvested Restricted Stock Shares Activity [Table Text Block]
  

Number

of Shares

  

Weighted

Average

Grant Date

Fair Value

 

Unvested shares outstanding, January 1, 2024

  189,784  $11.51 

Granted

  138,838   11.38 

Vested

  (39,790)  11.52 

Forfeited

  (11,200)  12.29 

Unvested shares outstanding, March 31, 2024

  277,632   11.41 
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information (Tables)
3 Months Ended
Mar. 31, 2024
Notes Tables  
Schedule of Segment Reporting Information, by Segment [Table Text Block]
   

Three Months Ended

March 31,

 
   

2024

   

2023

 

Revenue:

               

Electronic Test

  $ 11,116     $ 10,371  

Environmental Technologies

    6,828       8,042  

Process Technologies

    11,880       13,506  

Total revenue

  $ 29,824     $ 31,919  
                 

Income from divisional operations:

               

Electronic Test

  $ 1,813     $ 2,578  

Environmental Technologies

    15       1,013  

Process Technologies

    1,961       2,676  

Total income from divisional operations

    3,789       6,267  

Corporate expenses

    (2,702 )     (2,205 )

Acquired intangible amortization

    (595 )     (544 )

Interest expense

    (140 )     (182 )

Other income (expense)

    435       58  

Earnings before income tax expense

  $ 787     $ 3,394  
Revenue from External Customers by Geographic Areas [Table Text Block]
   

Three Months Ended
March 31,

 
   

2024

   

2023

 

Revenue:

               

U.S.

  $ 10,477     $ 11,090  

Foreign

    19,347       20,829  
    $ 29,824     $ 31,919  
Long-Lived Assets by Geographic Areas [Table Text Block]
   

March 31,

   

December 31,

 
   

2024

   

2023

 

Property and equipment:

               

U.S.

  $ 2,502     $ 2,502  

Foreign

    2,269       688  
    $ 4,771     $ 3,190  
Asset [Member]  
Notes Tables  
Schedule of Segment Reporting Information, by Segment [Table Text Block]
   

March 31,

   

December 31,

 
   

2024

   

2023

 

Identifiable assets:

               

Electronic Test

  $ 75,508     $ 32,505  

Environmental Technologies

    16,624       16,772  

Process Technologies

    57,815       56,842  

Corporate

    9,580       28,710  
    $ 159,527     $ 134,829  
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 1 - Nature of Operations (Details Textual)
€ in Thousands
3 Months Ended
Mar. 12, 2024
USD ($)
shares
Mar. 12, 2024
EUR (€)
shares
May 11, 2023
USD ($)
shares
Mar. 08, 2023
Mar. 31, 2024
Mar. 12, 2024
EUR (€)
Number of Operating Segments       2 3  
At-the-Market Issuance Sales Agreement [Member]            
Stock Issued During Period, Shares, New Issues (in shares) | shares     921,797      
Aggregate Offering Price of Stock     $ 20,000      
Stock Issued During Period, Value, New Issues     $ 19,244      
Commission Fee, Percentage of Gross Proceeds     3.00%      
Alfamation [Member]            
Business Combination, Consideration Transferred $ 22,353,000 € 20,000        
Payments to Acquire Businesses, Gross $ 19,674,000 € 18,000        
Business Acquisition, Equity Interest Issued or Issuable, Number of Shares (in shares) | shares 187,432 187,432        
Business Combination, Consideration Transferred, Equity Interests Issued and Issuable $ 2,086,000          
Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred 593,000 € 542        
Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities, Debt $ 9,418,000         € 8,616
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 2 - Summary of Significant Accounting Policies (Details Textual) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Mar. 31, 2022
Inventory Write-down $ 176 $ 135  
Deferred Grant Proceeds 298    
City of Rochester and State of New York [Member]      
Contingent Liability, Repayment of State and Local Grant Funds Received     $ 550
Covenant, Future Amount Receivable 123   $ 87
Electronic Test [Member]      
Accounts Receivable, Allowance for Credit Loss, Writeoff $ 48    
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details) - shares
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Weighted average common shares outstanding–basic (in shares) 12,026,361 10,755,729
Unvested shares of restricted stock and employee stock options (in shares) 131,936 332,935
Weighted average common shares and common share equivalents outstanding–diluted (in shares) 12,158,297 11,088,664
Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period (in shares) 434,584 154,429
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 3 - Acquisition (Details Textual)
€ in Thousands, $ in Thousands
1 Months Ended 3 Months Ended
Mar. 12, 2024
USD ($)
ft²
shares
Mar. 12, 2024
EUR (€)
shares
Mar. 31, 2024
USD ($)
Mar. 31, 2024
USD ($)
Mar. 12, 2024
EUR (€)
ft²
Alfamation [Member]          
Revenues     $ 1,379    
Net Income (Loss), Including Portion Attributable to Noncontrolling Interest     $ (101)    
Alfamation [Member]          
Business Combination, Consideration Transferred $ 22,353 € 20,000      
Payments to Acquire Businesses, Gross $ 19,674 € 18,000      
Business Acquisition, Equity Interest Issued or Issuable, Number of Shares (in shares) | shares 187,432 187,432      
Business Combination, Consideration Transferred, Equity Interests Issued and Issuable $ 2,086        
Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred 593 € 542      
Business Combination, Acquisition Related Costs $ 1,013     $ 1,013  
Lessee, Operating Lease, Term of Contract (Year) 6 years       6 years
Area of Real Estate Property (Square Foot) | ft² 51,817       51,817
Annual Lease Payments $ 284       € 260
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details)
€ in Thousands, $ in Thousands
Mar. 31, 2024
USD ($)
Mar. 12, 2024
USD ($)
Mar. 12, 2024
EUR (€)
Dec. 31, 2023
USD ($)
Goodwill $ 33,278     $ 21,728
Alfamation [Member]        
Goodwill   $ 11,796    
Identifiable intangible assets   13,087    
Cash   811    
Trade accounts receivable   4,004    
Inventories   11,243    
Other current assets   2,169    
Property and equipment   1,597    
Other assets   1,650    
Accounts payable   4,644    
Accrued expenses   4,311    
Other current liabilities   278    
Deferred tax liability   2,391    
Debt (current and long-term)   9,418 € 8,616  
Other non-current liabilities   2,962    
Total purchase price   $ 22,353    
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 3 - Acquisition - Intangible Assets (Details) - Alfamation [Member] - USD ($)
$ in Thousands
3 Months Ended
Mar. 12, 2024
Mar. 31, 2024
Finite-lived intangible assets $ 9,688 $ 9,688
Useful life (Year) 9 years 10 months 24 days  
Indefinite-lived intangible assets   $ 3,399
Total intangible assets $ 13,087  
Trade Names [Member]    
Indefinite-lived intangible assets 3,399  
Customer Relationships [Member]    
Finite-lived intangible assets $ 5,949  
Useful life (Year) 15 years  
Technology-Based Intangible Assets [Member]    
Finite-lived intangible assets $ 340  
Useful life (Year) 10 years  
Customer-Related Intangible Assets [Member]    
Finite-lived intangible assets $ 3,399  
Useful life (Year) 1 year  
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 3 - Acquisition - Proforma Information (Details) - Alfamation [Member] - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Revenue $ 34,752 $ 38,473
Net earnings $ 480 $ 3,227
Diluted earnings per share (in dollars per share) $ 0.04 $ 0.29
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 4 - Fair Value Measurements (Details Textual) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Fair Value, Recurring [Member] | Fair Value, Inputs, Level 3 [Member] | Other Current Liabilities [Member]    
Business Combination, Contingent Consideration, Liability, Current $ 247 $ 0
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Interest Rate Swap [Member]    
Interest rate swap $ 271 $ 285
Interest rate swap 271 285
Fair Value, Inputs, Level 1 [Member] | Interest Rate Swap [Member]    
Interest rate swap 0 0
Interest rate swap 0 0
Fair Value, Inputs, Level 2 [Member] | Interest Rate Swap [Member]    
Interest rate swap 271 285
Interest rate swap 271 285
Fair Value, Inputs, Level 3 [Member] | Interest Rate Swap [Member]    
Interest rate swap 0 0
Interest rate swap 0 0
Acculogic [Member]    
Contingent consideration liability (1,069) (1,093)
Acculogic [Member] | Fair Value, Inputs, Level 1 [Member]    
Contingent consideration liability 0 0
Acculogic [Member] | Fair Value, Inputs, Level 2 [Member]    
Contingent consideration liability 0 0
Acculogic [Member] | Fair Value, Inputs, Level 3 [Member]    
Contingent consideration liability $ (1,069) $ (1,093)
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details) - Contingent Consideration Liabilities [Member]
$ in Thousands
3 Months Ended
Mar. 31, 2024
USD ($)
Balance $ 1,093
Impact of foreign currency translation adjustments 24
Balance $ 1,069
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2024
USD ($)
Balance $ 21,728
Acquisition of Alfamation 11,796
Impact of foreign currency translation adjustments (246)
Balance 33,278
Alfamation [Member]  
Acquisition of Alfamation $ 11,796
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Goodwill $ 33,278 $ 21,728
Net Carrying Amount 28,819 16,596
Finite-lived, Gross Carrying Amount 30,248 20,801
Finite-lived, Accumulated Amortization 13,160 12,603
Net Carrying Amount, finite-lived 17,088 8,198
Indefinite-lived, Gross Carrying Amount 11,731 8,398
Net Carrying Amount, indefinite-lived 11,731 8,398
Intangible Assets, Gross Carrying Amount 41,979 29,199
Net Carrying Amount 28,819 16,596
Intangible Assets, Gross Carrying Amount 41,979 29,199
Net Carrying Amount 28,819 16,596
Trademarks [Member]    
Indefinite-lived, Gross Carrying Amount 11,731 8,398
Net Carrying Amount, indefinite-lived 11,731 8,398
Customer Relationships [Member]    
Finite-lived, Gross Carrying Amount 22,202 16,407
Finite-lived, Accumulated Amortization 10,082 9,687
Net Carrying Amount, finite-lived 12,120 6,720
Patented Technology [Member]    
Finite-lived, Gross Carrying Amount 3,195 2,895
Finite-lived, Accumulated Amortization 1,504 1,417
Net Carrying Amount, finite-lived 1,691 1,478
Patents [Member]    
Finite-lived, Gross Carrying Amount 590 590
Finite-lived, Accumulated Amortization 590 590
Customer Backlog [Member]    
Finite-lived, Gross Carrying Amount 3,851 499
Finite-lived, Accumulated Amortization 574 499
Computer Software, Intangible Asset [Member]    
Finite-lived, Gross Carrying Amount 270 270
Finite-lived, Accumulated Amortization 270 270
Trade Names [Member]    
Finite-lived, Gross Carrying Amount 140 140
Finite-lived, Accumulated Amortization 140 140
Electronic Test [Member]    
Goodwill 15,026 3,436
Net Carrying Amount 16,357 3,728
Net Carrying Amount 16,357 3,728
Net Carrying Amount 16,357 3,728
Environmental Technologies [Member]    
Goodwill 1,817 1,817
Net Carrying Amount 796 794
Net Carrying Amount 796 794
Net Carrying Amount 796 794
Process Technologies [Member]    
Goodwill 16,435 16,475
Net Carrying Amount 11,666 12,074
Net Carrying Amount 11,666 12,074
Net Carrying Amount $ 11,666 $ 12,074
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2024
USD ($)
Balance $ 8,398
Impact of foreign currency translation adjustments (66)
Alfamation [Member]  
Acquisition of Alfamation $ 3,399
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 12, 2024
Mar. 31, 2024
Balance   $ 8,198
Impact of foreign currency translation adjustments   (203)
Amortization   (595)
Alfamation [Member]    
Acquisition of Alfamation $ 9,688 $ 9,688
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details)
$ in Thousands
Mar. 31, 2024
USD ($)
2024 (remainder) $ 4,384
2025 2,863
2026 1,577
2027 1,083
2028 $ 952
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Revenue $ 29,824 $ 31,919
Semiconductor Market [Member]    
Revenue 14,967 17,683
Industrial Market [Member]    
Revenue 4,187 3,137
Automotive [Member]    
Revenue 3,958 2,597
Life Sciences [Member]    
Revenue 653 1,513
Defense/ Aerospace [Member]    
Revenue 3,239 2,839
Security [Member]    
Revenue 541 966
Other Multi Markets [Member]    
Revenue 2,279 3,184
Thermal Testing Products [Member]    
Revenue 3,699 5,820
Thermal Process [Member]    
Revenue 10,955 9,822
Semiconductor Production Test Products [Member]    
Revenue 6,282 8,105
Video Imaging [Member]    
Revenue 2,119 2,648
Flying Probe and In-circuit Testers [Member]    
Revenue 2,744 1,160
Alfamation [Member]    
Revenue 1,379 0
Service and Other Products [Member]    
Revenue 2,646 4,364
End User [Member]    
Revenue 21,430 21,704
OEM, Integrators and Distributor [Member]    
Revenue $ 8,394 $ 10,215
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 7 - Major Customers (Details Textual)
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Number of Major Customers 1 1
Customer Concentration Risk [Member] | Revenue Benchmark [Member] | Texas Instruments Incorporated [Member]    
Concentration Risk, Percentage 15.00% 13.00%
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 8 - Inventories - Inventories (Details) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Raw materials $ 17,104 $ 15,948
Work in process 9,419 1,563
Inventory consigned to others 114 98
Finished goods 4,694 2,480
Total inventories $ 31,331 $ 20,089
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 9 - Leases (Details Textual)
€ in Thousands, $ in Thousands
3 Months Ended
Mar. 31, 2024
USD ($)
ft²
Mar. 31, 2023
USD ($)
Mar. 31, 2024
EUR (€)
ft²
Mar. 12, 2024
USD ($)
ft²
Mar. 12, 2024
EUR (€)
ft²
Dec. 31, 2023
USD ($)
Operating Lease, Right-of-Use Asset, Periodic Reduction $ 403 $ 391        
Operating Lease, Right-of-Use Asset 6,270         $ 4,987
Increase (Decrease) in Operating Lease Liability (447) (423)        
Operating Lease, Liability 6,661          
Lease Facility in Singapore [Member]            
Operating Lease, Right-of-Use Asset 82          
Operating Lease, Liability $ 82          
Environmental Technologies in Germany [Member]            
Operating Lease, Right-of-Use Asset   $ 90        
Lessee, Operating Lease, Term of Contract (Year)   25 months        
Operating Lease, Liability   $ 90        
Process Technologies in Europe [Member] | Automobile Leases [Member]            
Operating Lease, Right-of-Use Asset   $ 30        
Lessee, Operating Lease, Term of Contract (Year)   36 months        
Operating Lease, Liability   $ 30        
Alfamation [Member]            
Area of Real Estate Property (Square Foot) | ft²       51,817 51,817  
Annual Lease Payments       $ 284 € 260  
Lessee, Operating Lease, Term of Contract (Year)       6 years 6 years  
Alfamation [Member] | Warehouse and Office Space [Member]            
Area of Real Estate Property (Square Foot) | ft² 51,817   51,817      
Annual Lease Payments | €     € 260      
Operating Lease, Right-of-Use Asset $ 1,758,000          
Increase (Decrease) in Operating Lease Liability $ 1,758,000          
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 9 - Leases - Lease Costs (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Operating lease cost $ 451 $ 400
Short-term lease cost $ 3 $ 3
Weighted average remaining lease term (in years) (Year) 4 years 6 months  
Weighted average discount rate 5.30%  
Minimum [Member]    
Range of remaining lease terms (in years) (Year) 6 months  
Maximum [Member]    
Range of remaining lease terms (in years) (Year) 7 years 1 month 6 days  
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 9 - Leases - Maturities of Lease Liabilities (Details)
$ in Thousands
Mar. 31, 2024
USD ($)
2024 $ 1,896
2025 1,644
2026 1,313
2027 1,093
2028 675
Thereafter 869
Total lease payments 7,490
Less imputed interest (829)
Total $ 6,661
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 10 - Debt (Details Textual)
$ in Thousands
3 Months Ended
Dec. 29, 2021
USD ($)
Oct. 28, 2021
USD ($)
Oct. 15, 2021
USD ($)
Mar. 31, 2024
USD ($)
Mar. 31, 2023
USD ($)
Sep. 20, 2022
USD ($)
Interest Expense, Operating and Nonoperating       $ 140 $ 182  
Debt Instrument, Covenant, Ratio of Consolidated Funded Debt to Consolidated EBITDA           3
Debt Instrument, Covenant, Fixed Charge Coverage Ratio           1.25
Long-Term Debt       11,017    
Alfamation [Member]            
Long-Term Debt       9,420    
Short-Term Debt       $ 2,130    
Debt, Weighted Average Interest Rate       4.00%    
October 2021 Agreement [Member] | M&T Bank [Member]            
Debt Instrument, Term (Year)     5 years      
Debt Instrument, Interest Rate in Event of Default     2.00%      
October 2021 Agreement [Member] | M&T Bank [Member] | Revolving Credit Facility [Member]            
Line of Credit Facility, Maximum Borrowing Capacity     $ 10,000      
Interest Expense, Operating and Nonoperating       $ 140 $ 182  
October 2021 Agreement [Member] | M&T Bank [Member] | Term Note [Member]            
Debt Instrument, Face Amount     $ 25,000      
Debt Instrument, Draw Period (Year)     2 years      
Proceeds from Issuance of Long-term Debt, Total $ 8,500 $ 12,000        
Debt Instrument, Interest Rate, Effective Percentage   3.20%   7.40%    
Amended Loan Agreement [Member] | M&T Bank [Member]            
Long-Term Line of Credit, Total       $ 0    
Amended Loan Agreement [Member] | M&T Bank [Member] | Term Note [Member]            
Debt Instrument, Face Amount           $ 50,500
Debt Instrument, Unused Borrowing Capacity, Amount       $ 30,000    
Debt Instrument, Long-term, Fixed Interest Rate Debt [Member] | Alfamation [Member]            
Debt, Weighted Average Interest Rate       1.90%    
Debt Instrument, Short-term, Variable Interest Rate Debt [Member] | Alfamation [Member]            
Debt, Weighted Average Interest Rate       5.00%    
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 10 - Debt - Outstanding Letters of Credit (Details) - Letter of Credit [Member] - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Dec. 31, 2023
Letters of Credit Amount Outstanding $ 100 $ 100
Mt Laurel [Member]    
Line of Credit, Issue Date Mar. 29, 2010  
Line of Credit, Expiration Date Apr. 30, 2025  
Lease Expiration Date Apr. 30, 2031  
Letters of Credit Amount Outstanding $ 50 50
Mansfield [Member]    
Line of Credit, Issue Date Oct. 27, 2010  
Line of Credit, Expiration Date Dec. 31, 2024  
Lease Expiration Date Dec. 31, 2024  
Letters of Credit Amount Outstanding $ 50 $ 50
XML 69 R58.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 10 - Debt - Future Maturities of Long-term Debt (Details)
$ in Thousands
Mar. 31, 2024
USD ($)
2024 (remainder) $ 3,075
2025 4,100
2026 3,842
Long-Term Debt 11,017
Alfamation [Member]  
2024 (remainder) 4,987
2025 2,085
2026 1,293
Long-Term Debt 9,420
2027 807
2028 $ 248
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan (Details Textual)
$ / shares in Units, $ in Thousands
1 Months Ended 3 Months Ended 12 Months Ended 15 Months Ended
Mar. 06, 2024
USD ($)
shares
Jan. 16, 2024
USD ($)
shares
May 08, 2023
USD ($)
shares
Mar. 08, 2023
USD ($)
shares
Mar. 09, 2022
USD ($)
shares
Mar. 08, 2022
Oct. 01, 2021
shares
Mar. 10, 2021
shares
Aug. 31, 2020
Mar. 31, 2024
USD ($)
$ / shares
shares
Dec. 31, 2023
Mar. 31, 2023
USD ($)
$ / shares
shares
Dec. 31, 2023
Mar. 31, 2024
USD ($)
shares
Share-Based Payment Arrangement, Amount Capitalized | $                   $ 0   $ 0    
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | $ / shares                   $ 6.55   $ 9.32    
Number of Operating Segments       2           3        
Share-Based Payment Arrangement, Option [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year)                   10 years        
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)                           4 years
Restricted Stock [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)                   138,838        
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares)                   39,790        
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value | $                   $ 463   $ 381    
Restricted Stock [Member] | Employees [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)                   4 years        
Restricted Stock [Member] | Independent Directors [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)                   1 year        
Restricted Stock [Member] | Independent Directors [Member] | Share-Based Payment Arrangement, Tranche One [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   25.00%        
Performance-Based Restricted Stock [Member] | Members of The Senior Management [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)             5,000 18,000            
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares (in shares)                       6,000    
Performance-Based Restricted Stock [Member] | Members of The Senior Management [Member] | Share-Based Payment Arrangement, Tranche One [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   75.00%        
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number (in shares)                   6,000       6,000
Performance-Based Restricted Stock [Member] | Members of The Senior Management [Member] | Share-Based Payment Arrangement, Vesting on Third Anniversary of Grant Date [Member]                            
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares)                   12,000        
Performance-Based Restricted Stock [Member] | Members of The Senior Management [Member] | Share-Based Payment Arrangement, Tranche Two [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   100.00%        
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number (in shares)                   6,000       6,000
Performance-Based Restricted Stock [Member] | Members of The Senior Management [Member] | Vesting on January 1, 2025, Based on Performance Metrics [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   0.00%     50.00%  
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range             0.00%              
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range             150.00%              
Performance-Based Restricted Stock [Member] | Chief Executive Officer and Chief Financial Officer [Member]                            
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range         0.00% 0.00%                
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range         150.00% 150.00%                
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)       18,888 20,493                  
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Granted, Fair Value | $       $ 303 $ 200                  
Performance-Based Restricted Stock [Member] | Chief Executive Officer and Chief Financial Officer [Member] | Share-Based Payment Arrangement, Tranche One [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   100.00%        
Share-Based Compensation Arrangement by Share-Based Payment Award, Probable Final Vesting Percentage                   0.00% 50.00%      
Performance-Based Restricted Stock [Member] | President of Environmental Technologies [Member]                            
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range     0.00%                      
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range     150.00%                      
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)     5,081                      
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Granted, Fair Value | $     $ 108                      
Performance-Based Restricted Stock [Member] | President of Environmental Technologies [Member] | Share-Based Payment Arrangement, Tranche One [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   100.00%        
Performance-Based Restricted Stock [Member] | President of Process Technologies [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)   8,231                        
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Granted, Fair Value | $   $ 100                        
Performance-Based Restricted Stock [Member] | President of Process Technologies [Member] | Share-Based Payment Arrangement, Tranche One [Member]                            
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range   0.00%                        
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range   150.00%                        
Performance-Based Restricted Stock [Member] | Chief Executive Officer, Chief Financial Officer, and Division Presidents [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) 33,539                          
Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Granted, Fair Value | $ $ 380                          
Performance-Based Restricted Stock [Member] | Chief Executive Officer, Chief Financial Officer, and Division Presidents [Member] | Share-Based Payment Arrangement, Tranche One [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                   100.00%        
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range 0.00%                          
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range 150.00%                          
The 2023 Stock Incentive Plan [Member]                            
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount | $                   $ 4,813       $ 4,813
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)                   2 years 6 months        
Restricted Stock Vesting in Three Years [Member] | Restricted Stock [Member] | Vesting Based On Performance Metrics [Member]                            
Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage                 100.00%          
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range                 0.00%          
Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range                 150.00%          
XML 71 R60.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details) - Restricted Stock [Member] - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Share-Based Payment Arrangement, Expense $ 349 $ 474
Cost of Sales [Member]    
Share-Based Payment Arrangement, Expense 31 19
Selling and Marketing Expense [Member]    
Share-Based Payment Arrangement, Expense 11 10
Research and Development Expense [Member]    
Share-Based Payment Arrangement, Expense 4 10
General and Administrative Expense [Member]    
Share-Based Payment Arrangement, Expense $ 303 $ 435
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details) - Share-Based Payment Arrangement, Option [Member]
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Risk-free interest rate 3.98% 3.94%
Dividend yield 0.00% 0.00%
Expected common stock market price volatility factor 57.00% 57.00%
Weighted average expected life of stock options (years) (Year) 6 years 3 months 6 years 3 months
XML 73 R62.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details)
3 Months Ended
Mar. 31, 2024
$ / shares
shares
Options outstanding, number of shares (in shares) | shares 505,006
Options outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 10.46
Granted, number of shares (in shares) | shares 165,364
Granted, weighted average exercise price (in dollars per share) | $ / shares $ 11.33
Exercised, number of shares (in shares) | shares (4,925)
Exercised, weighted average exercise price (in dollars per share) | $ / shares $ 3.69
Canceled, number of shares (in shares) | shares (23,401)
Canceled, weighted average exercise price (in dollars per share) | $ / shares $ 10.27
Options outstanding, number of shares (in shares) | shares 642,044
Options outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 10.74
XML 74 R63.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals) - shares
Mar. 31, 2024
Dec. 31, 2023
Options exercisable (in shares) 228,364 171,735
XML 75 R64.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details) - Restricted Stock [Member]
3 Months Ended
Mar. 31, 2024
$ / shares
shares
Unvested shares outstanding (in shares) | shares 189,784
Unvested shares outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 11.51
Granted, number of shares (in shares) | shares 138,838
Granted, weighted average exercise price (in dollars per share) | $ / shares $ 11.38
Vested, number of shares (in shares) | shares (39,790)
Vested, weighted average exercise price (in dollars per share) | $ / shares $ 11.52
Forfeited, number of shares (in shares) | shares (11,200)
Forfeited, weighted average exercise price (in dollars per share) | $ / shares $ 12.29
Unvested shares outstanding (in shares) | shares 277,632
Unvested shares outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 11.41
XML 76 R65.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 12 - Employee Stock Purchase Plan (Details Textual) - USD ($)
$ / shares in Units, $ in Thousands
3 Months Ended 30 Months Ended
Mar. 31, 2024
Mar. 31, 2024
Mar. 31, 2023
Mar. 31, 2024
Jun. 23, 2021
Stock Issued During Period, Value, Employee Stock Purchase Plan   $ 54 $ 48    
Share Price (in dollars per share) $ 13.25 $ 13.25   $ 13.25  
Share-based Compensation Arrangement by Share-based Payment Award, Discount Amount   $ 8 $ 8    
Employee Stock Purchase Plan [Member]          
Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares)         250,000
Stock Issued During Period, Shares, Employee Stock Purchase Plans (in shares) 4,104     47,037  
Stock Issued During Period, Value, Employee Stock Purchase Plan $ 46     $ 460  
Shares Issued, Price Per Share (in dollars per share) $ 11.26 $ 11.26   $ 11.26  
Share-Based Compensation Arrangement by Share-Based Payment Award, Discount from Market Price, Purchase Date   15.00%      
Share-based Compensation Arrangement by Share-based Payment Award, Discount Amount   $ 8      
Share-Based Payment Arrangement, Expense       $ 81  
XML 77 R66.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 13 - Employee Benefit Plans (Details Textual) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Deferred Compensation Liability, Classified, Noncurrent $ 1,596  
401(k) Plan [Member]    
Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay 10.00%  
Defined Contribution Plan Maximum Annual Employer Matching Contribution Per Emplyee Amount $ 5  
Defined Contribution Plan Employer Matching Contribution Vesting Period (Year) 4 years  
Defined Contribution Plan, Employer Discretionary Contribution Amount $ 389 $ 372
The Ambrell Plan [Member]    
Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay 10.00%  
Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent 100.00%  
Defined Contribution Plan, Employer Matching Contribution, Percent of Match 50.00%  
Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount $ 5  
Defined Contribution Plan, Employer Discretionary Contribution Amount $ 389 $ 372
XML 78 R67.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information (Details Textual)
3 Months Ended
Mar. 31, 2024
Number of Reportable Segments 3
XML 79 R68.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information - Segment Information (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Net revenues $ 29,824 $ 31,919
Earnings before income tax expense 787 3,394
Acquired intangible amortization (595) (544)
Interest expense (140) (182)
Other income (expense) 435 58
Operating Segments [Member]    
Net revenues 29,824 31,919
Earnings before income tax expense 3,789 6,267
Operating Segments [Member] | Electronic Test [Member]    
Net revenues 11,116 10,371
Earnings before income tax expense 1,813 2,578
Operating Segments [Member] | Environmental Technologies [Member]    
Net revenues 6,828 8,042
Earnings before income tax expense 15 1,013
Operating Segments [Member] | Process Technologies [Member]    
Net revenues 11,880 13,506
Earnings before income tax expense 1,961 2,676
Segment Reporting, Reconciling Item, Corporate Nonsegment [Member]    
Earnings before income tax expense $ (2,702) $ (2,205)
XML 80 R69.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information - Identifiable Assets (Details) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Identifiable Assets $ 159,527 $ 134,829
Electronic Test [Member]    
Identifiable Assets 75,508 32,505
Environmental Technologies [Member]    
Identifiable Assets 16,624 16,772
Process Technologies [Member]    
Identifiable Assets 57,815 56,842
Corporate Segment [Member]    
Identifiable Assets $ 9,580 $ 28,710
XML 81 R70.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2024
Mar. 31, 2023
Revenue $ 29,824 $ 31,919
UNITED STATES    
Revenue 10,477 11,090
Non-US [Member]    
Revenue $ 19,347 $ 20,829
XML 82 R71.htm IDEA: XBRL DOCUMENT v3.24.1.u1
Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details) - USD ($)
$ in Thousands
Mar. 31, 2024
Dec. 31, 2023
Property and Equipment $ 4,771 $ 3,190
UNITED STATES    
Property and Equipment 2,502 2,502
Non-US [Member]    
Property and Equipment $ 2,269 $ 688
EXCEL 83 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( />!J5@'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " #W@:E8L*(J8.\ K @ $0 &1O8U!R;W!S+V-O&ULS9+/ M3L,P#(=?!>7>.NTV$%&7"V@GD)"8!.(6)=X6K?FCQ*C=V].6K1."!^ 8^Y?/ MGR4W.@H=$KZD$#&1Q7S3N]9GH>.:'8BB ,CZ@$[EFC MVB/4G-^"0U)&D8(16,29R&1CM- )%85TQAL]X^-G:B>8T8 M.O24H2HK8'*< M&$]]V\ 5,,((D\O?!30S<:K^B9TZP,[)/MLYU75=V2VFW+!#!>_/3Z_3NH7U MF937./S*5M IXII=)K\M'AZW&R9K7B\+OBKX_;;FHEJ)ZNYC=/WA=Q5VP=B= M_&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" #W@:E8F("M6=$% #K'@ & 'AL+W=O0T,J\L.CXTA+(^\./;9PG<7\EU5>]$,*0ER1.]45C8JD$#_.B)&XQS^NV$AZEC4$_?V^L!GV9F3A*Q5@1G24) M5Z]7(I:KBP9M;-YXC.8+8]]H#?I+/A<387Y?CA4O\ M+UD5Y[;;#1)DVLAD70PM2**T^,]?UAVQ7>#M*&#K O:N@/H["OQU@9^#%BW+ ML:ZYX8.^DBNB[-F09E_D?9-7 TV4VF&<& 6?1E!G!M*R+8[TOYB/^@E#\1% WZ26JAGT1C\\!WM>C^[<+]1V!OZ=DG?QM(' MZYDRA Y0/(8^",4+^4V\NJ#Q),_SJ.=W69>Y&-':FHR=DK%S"..CF$<:*&&H M'W@B7(1XSNAA>C.9DN&GQ[$+$2VNB=@M$;MHTRYA!H?Y++Z-^=R%AM?/>*Q= M/3)$RVI"G9509VBCAIE2.5*D YB;7P17=@TBL#XZ1P]/:S8I:_K4!8D6UH3L ME9 ]M%GE\K.F' L5R9#-:NZP5: M59./>M6%USN,%E=;&V?((>AO4YX\H(%=L5="F5<2+B M649ESM4%+ZN+R"I$=ACB^D>'+2Y[HDJGV2DU>$!=ULIR**H16[,4KH ZRBT' M&4\\;.?E J^K"UG)##W(9FZC6)"'+'D2R@F'A]"FWZ7TS(EW#(VAEYQQ2-[7IO<<&W(1SM/KA7<;<.DR2(X8)[G[(-C"!&MC(CB$O.^#X;V".;W M5*Y2)S\>=V].R1W/E(B=K,>0(UK9$<65YCUK^6,>*_DP M)%99$L,MYSWH6&H#.OA7M-RY7NU)]'I>Q_WXX!CBQ"IQ8KCLY-/U4@F^&PP/ MZ'6Z3JQCR!*K9(GAAG,G\]N3A4RQ:^N>D([7:?9Z[E4'+ZW+5PD2PYUF&AFP M!CDCE/WX]!.9B"!3,)).2#QI*),$+E 3(X.O)V0)]SO//,X$^=X[]2A9"E4\ MBG/VP3'\B57^Q'#U 3<,HW1.)J_)DW0MEU=[ D8/TZF3ZQCBQ"IQ8KC:; :3 MW+P$"Y[.Q=]I[$+\XG MQ4.\JBYG94?L(#L:I7 _6NP;V/LUO@%WC"" MN53NE0C/N0P" 1$0$!9A3M9C&!"K#(@=9$"3A,P)V@>%U=T,I[?%Q;-@.Y$#"0 M&!X>LQOO&/[C5_[CX^JR66/?7-PG^9X:^909L-G47CN=Q-_(;-;]4*1U\C2[ MN_L\H*S=.^^V6;_UO,W8VMI.M-,OWV75)+#/"8J=Q?+=4 M^]N#_P!02P,$% @ ]X&I6%0#K+)?" AB4 !@ !X;"]W;W)K\@TO],&O76O"R;U17,Q)%R:SFLIG, MK_I[MWI^I39=)1MQJU&[J6NNGS^)2CU=3_!D?^.K?%AUYL9L?K7F#^).=-_7 MMQJN9H=>2EF+II6J05HLKR3PV^:AL>?][W_NW<>G+GGK5BHZK^R[%;7 MDVR"2K'DFZK[JI[^(W8.Q::_0E5M_S]ZVME&$U1LVD[5N\:@H);-]B__N0O$ M40/,/ W(K@%Y:0.Z:T![1[?*>K=N>,?G5UH](6VLH3?SH8]-WQJ\D8T9QKM. MP[<2VG7SA6I:57J5DU\["K)XGSDJFV%,YS&;E?C@ZMQT-7?FT<8 *6E< Y";/TF MQ?8@V%:0U+/)^L&9?NQ-:=)=E( MMFU$2,S."HP&-45#E'P+V!RM5E4C6:ZT>1>U+CKN.3B9X3LE(I M0(G#I.QWX9=J>;EIQ2[;]8QT"K4!EI#4"JIMQ?(L]0@=,(?#G/M-J?))5I53 MF(-RE*1C7#C,"$Z);]4/G,-AT)GA7G"MGV7S@#[69L_A5.G 59;A<69RF.$D MSA./RH%K. RV&[$4 +42=?QG@&O81I8UPK8)9M0WP@/5Q@_^JN MG8(H>W7Q]$:]G3I]5"J&2;9W>JUT?R0!4_N;T#7Z4W7B:'M;ALC-?E.+> M.>N)3:X\(>-4XK!BWGE/!KR1,U6@[85A'= 8\E]EMD#'H^J4;\.,1-B:>[85 MSHEO:0S((V'D?=R7A6O^;&I"IT!'K89I'H\5VF9Q3#S[,S*PCH19!PKU!M+@ M$W_8E4WWHA%+Z5G*-M826*%CJ;85P[&'*F1@'PFS;R\5MCM+V*;!=("TLQ2> M8;?1EF5T+-3!/^*#-!GP1\+X6_0G8["X=BS9QK7<0U$+**,W[KE@XRX^YO%. MMFU%T]P#13) D82AN(]ORRN8"H6J:]E'V1U?!^8PMI2Z8!A[CB'(0$,2IN$- M1+?M9-''=:FTD \-D@U(%F;+(<+KS:9@'%GIS(5*ZID9=$ E#:/RR\F1Q)G, M16T>DHB,0^RPPBSSY 4Z,).&Z[;3LXES2NUJC.9)/%YN#C/"2.[A.QU01\.H M^^(GPN$0KC@%B=,+!\(2QL9.V%:4>7TX.NT,@^X\FU_EB@-G41:-JQ2'69HS MXO%EH!X-4V^A&C,:1F,!Z4.6_?!XE-I8R\@8* XC'.4>.M.!?33,OIM11GY5 MA&W&88+'.VZ7U?&1Z*GP@80T3,*3^NKGCFL:.8Y?:4#\&@8>-L<=TZ@C; DIXH1E%D M_J%VQ;79KF^ZE=+R?Z+\@!JUOPN[-K.-4QJI3==V,&M@PCC#9_-X/*V#)J>. M#KAF9RI3F-)0ROF\)%'(34RF<9),(\+ZY0"7A.%I3N)3[U_P',WF.";CHLMI MY.$C&UC/PJS_6):RVY8OYJG5I6Q0P=<2DI%3J WI.,GC\;[$9<98[!NMH\>; M9TYM1;\4N-DOM=T'E&;3&,?] M!$_C:1IGN\G]@EEM<_PRMY[!.JU\SWK8 'SVDN>9K2-[.Z7:3,]!ZAC]+K.$ M^ H<-L"?O1+^?;A?+'[;^?&[!,XS39>=ZTQS=O22C'E#Z3/7#[)IH:!90L/H M70K^Z^U+/]N+3JW[]V;N5=>INO^X$AQD&P/X?JF@EMA=F%=Q#J]>S?\/4$L# M!!0 ( />!J5C90+)S"0, D* 8 >&PO=V]R:W-H965T&ULG99;;]HP%,>_BA7M :2.7,@%*D!JJ:;M81(J[?9L$D.L.G9F.Z7= MI]]QDF8)3;F4!^++^9_\CGTR">5$J+12\:XFENIUOFU;:LX)1E6(Y$3 M#C-;(3.LH2MWMLHEP4DIRICM.4YH9YAR:S$KQU9R,1.%9I23E42JR#(L7V\) M$_NYY5IO _=TEVHS8"]F.=Z1-=&/^4I"SVZ\)#0C7%'!D23;N77C7B]=QPA* MBU^4[%6KC4PH&R&>3.=',K<<0T08B;5Q@>'Q3):$,>,)./[43JWFG4;8;K]Y M_U8&#\%LL")+P7[31*=S:V*AA&QQP?2]V'\G=4"!\1<+ILI_M*]M'0O%A=(B MJ\5 D%%>/?%+O1 M@>M_(/!J@7>N8%P+QF6@%5D9UAW6>#&38H^DL09OIE&N M3:F&:"@WV[C6$F8IZ/1B*;@2C"98DP3=8H9Y3-#:N%-HL"RD)%RC%9%4).B1 MXR*A8#A$@Q4V,RG1-,9,#=%7]+B^0X,O0_0%48X>4E$HS!,ULS50FG?9<4UT M6Q%Y'Q#]Q'*$QNX5\AS/[Y$OC\OO2-S(QUVY#6O3+)#7+)!7^O,_\'?#(-/+ M58$S@Q)1;/2V8)!^L2BX[HVOE[X7CBSG]M!]-A$?F/3(1TWI..C MI"LX 0V+$&0-?$3RK%$SY@5! U@1Q+!&)8*Y00.<0J[-^Q#K]X0M;",> ML)\PZL#[#;Q_"?Q5Q:@0+G0J)/T+$R:*:K07O?(?M*@"I_P=T)^VZP00- $$ MGPJ *E601UB'[/H (<-KP)/4QBPYUU%!'1ZF7 M(LO@ZU\C?R;%HW-2_(11!WW2H$\N0+\XOR?OEM)S>A/\#,,._[3AGU[.?UYZ M3]\AN5X0AN4'OL/>9^CY[M0+^ME=Y_\]YQRE?X B1Q7R]8#_!'CMM T430(W M.,#N,PNB8'( ;;?N:5,DP56WHUPA1K:@!J5@05&#UE00 ,P0 8 M >&PO=V]R:W-H965T&ULK5AMS/W)3;XV=6SN](^VBQ. M7'R7>\84>LFS0BZ=O5*':]>5FSW+J;SB!U; +ULNQ<>1",)I51GKG$ M\T(WIVGAK!;5NWNQ6O!296G![@6299Y3\<\-R_AIZ6#G]<5#NMLK_<)=+0YT MQQZ9>CK<"WAR6R])FK-"IKQ @FV7SD=\O2:>-J@0?Z?L)'O?D0[EF?/O^N$N M63J>9L0RME':!86/(UNS+-.>@,>/QJG3KJD-^]]?O?]>!0_!/%/)UCS[EB9J MOW1B!R5L2\M,/?#3GZP)*-#^-CR3U5]T:K">@S:E5#QOC(%!GA;U)WUI$M$S M #]F ](8D*'!;,+ ;PS\*M":6176)ZKH:B'X"0F-!F_Z2Y6;RAJB20M=QDH^>'C^A MB[>7Z"U*"_1USTM)BT0N7 5\M%=WTZQ]4Z]-)M;VT6=>J+U$MT7"DG-[%^)H M@R&OP=P0J\//5%PA'_^&B$=F!C[K7S?W+73\-K=^Y6\VX>^!'5E1,E-B:L.P M,M0G[;@B\UAS/O;ICE$^GN-YBSIC-6M9S:RLUEPJ75XQS:YV$/36Q6$TBP?L M3*@XC,SL@I9=8&7WA^!2HH/@VU29J 7C17TO"@?4#*C "XB96MA2"RLS?X): MX-B&$"S(##7(FZYQ59NM\4.WC"A^4'ST1LF M*3<*&O@1E.F@>YB-=SS>'W#\!KQ-(&]FYCUO><_MVYL5L(FRBC--H)^G4NE- M=60VNO,1D]##0[IC4("CB31CKY,'STKX*U= EX^VOK';>^.,D2 >=C43# ?^ M1&9Q3\FPE6IW/M-BPW-C)AL79YMQ/LRD >0'.)[@1SI^Q,KOKE ,3JEU8S8N M^DN_Q[/AB3*BXHGVACNYPG:]^J+V3-B2YX^3YP=#;F-0,)6Z3K*P7;-NJ2B@ ML!(],[BYLH8C4O3%FLRQ0D5Q-.0[!OG^?&HS=C*&[3IV]VL,#4)%1AD=@X)H M0F9Q)V;8JAVKOV!$8$U:C=3"T>4C#$,2N>#^IEE;N MLS#9CS(]TJR>F@RE[(=O*28QB2<.8C(?=BP3$GMQ'(;#KN7VYL*502T1#TZUP^* M'ZKI\YDKF&6KKWM&$R8T '[?'_0"[3\P5O\"4$L#!!0 ( />!J5A< M>G?DJ0( ,X& 8 >&PO=V]R:W-H965T&ULC951;]HP M$,>_RBGJ0RNM! *DM J1"NVT/72JRMB>77(D7AV;V0;:??J=G9!12-%>$MNY M__EW/M\EV2K]8@I$"Z^ED&8<%-:N;L+0+ HLF>FH%4KZLE2Z9):F.@_-2B/+ MO*@48=3MQF')N S2Q*\]ZC11:RNXQ$<-9EV63+]-4*CM..@%NX4GGA?6+81I MLF(YSM#.5X^:9F'C)>,E2L.5!(W+<7#;NYG&SMX;_."X-7MC<)$\*_7B)E^S M<=!U0"AP89T'1J\-3E$(YX@P?M<^@V9+)]P?[[Q_]K%3+,_,X%2)GSRSQ3@8 M!9#ADJV%?5+;+UC',W3^%DH8_X1M;=L-8+$V5I6UF A*+JLW>ZW/84] ?MH% M42V(#@6##P3]6M#W@59D/JP[9EF::+4%[:S)FQOXL_%JBH9+E\69U?25D\ZF M4R6-$CQC%C.867I1BJP!M82I*NEB%"YC&X1[IB67N8'SN63KC)/]!5S"?'8' MYV<7< 9)HWC* DW^\3'-M&H=]48O>,:-%R#DUQS2;4O^!_*OE"&\BXID18U&@N: M;@.8+5L!RS7ZB]&&7FTPW,.Z[ T.T%MLKJ_;R8<-^? D.54QU:BD(M$:Y>(- MK&;2"%9UA^P7U8Z_RFW(PV.HZQ$>I'@X/ M 8]MHM%H=$ 8[K6&$G7N.Z:!A5I+6Q53L]HTY5O?BP[6)]2LJ][ZSTW5Z:E4 ME? M4$L#!!0 ( />!J5C7#CBGGP@ X\ 8 >&PO=V]R:W-H965T&ULO5O;AXZ?8 E MR.*$%X47.^[7'Y!B1.$B0#I%^B*)U,+BYN+> /8&>/E<5I_K#:4-^)IG17TU MV33-]MUL5B\W-"?UVW)+"_;/NJQRTK##ZG%6;RM*5GVC/)LAQ_%G.4F+R?5E M?^ZNNKXLVR9+"WI7@;K-%KMO\G40 MXJ !0D<:H*$!$AI@_T@#/#3 XA7F1QJX0P-7O,*Q!M[0P!,;'+L'?VC@"PT@ M/M)@/C28]P]KIV[_:!:D(=>75?D,J@[-V+H?_?/M6[,GDA:=*]XW%?LW9>V: MZ]NRJ,LL79&&KL!]P[Z8GS4U*-?LJ%Q^WI39BE;U3R#ZTJ;-"WC]J2#M*F7H M-V */MTOP.M7;\ KD!;@]TW9UJ18U9>SAEG6\<^6@Q7O=U:@HU;D.?/+_HK@ MSU]I_D"KOQ0TMWJ:FQ6SC#DXR< =25=39M0MV:8-.]:0+O2D'VG#(IJI$Y&J M2(O'6L<5&0S\[?8#N&F:*GUH&_*04="4S-2*2:YCC?6LO[,^J&ZKEYU^%V!0 M4T.8& A+)AG?;,;\:N]<:.]S=GWITS6$CH_1'%[.G@[=07OYKA=_5V_)DEY-6#==T^J) M3JY__ 'ZSL\J-[!)%MDDBVV2)9;(.(? >X? )SG$*4ZP8_(Y)Q"?OXS!, SF M/&JA0*' OG*M5[C]L5D*'#DBE MEBN%C"-H940L9 0*H"!F9*2)C8C$<"%.(&\OD*<5Z+=F0RNP+'/FMIMNJO1$ M05;62K$\HUA&Q,*(B&2$V'_%1I)$2\()Y>^%\K5"W>1EU:1_DWXFR(9Y-F^C M5<7&MTX[)MSNCXIF_92 C4]U-ZI,N_G>"I!G4JD'>%_R>E%37[H5=R[$SD+& MB*H:$;$1D>@MX52=[U6=:U7]4-=MW[4Q1=OBB=:=>+LQKSO%OMB@O^Q/]I.< M@R%1I>9R<);#J)RC$">504 MG"*07&=B$RA15NQL1#ZP*PO'5-N[3%%'FA0C[%S%-KZ;FA9Y,LLDD6VR1++)%Q MO@.=,=%U_F_O^8-D+34Z3\O,4N:VCG'L&R"Z"849$IDAL1F2:"&\N =5!'B" MN.6VFSO4@'ZEU3*MS<$VL'(S00\YDGK:BY\;;5;9(JMLL56VQ!8;[Q1C]@_U MZ?\1IU Z C*'D*(JX'MB$,D@*8B,D-@,20S6\(J-Z3'4Y\>[40RDNTZJ+58L MI8GR;5:^4#IT27=MM=RPN3BX8ZFT,;ZP'%\H1**R6J/.#B^;;)%5MM@J6V*+ MC7>6L2( ]26![D;-T-Q+ SYOR1&1*;(8G>&%[(L7( ]:6#0:P[0'WAX4@U^%=2[0N!6"F?G*Y#"/W "205M0:$'&A/O6#%DH(+XO:!^9 M>6(S)#%Q,L\EAJPOM1P MPL*HJY1/SLXA\GR_A_,J:@TXNR.SR19998NMLB6VV'C'&.LD6%\G.;(PJG8& M>9,!E&:!"I#GAW*O)<-<%'B!&%4R#(NOZ,0*T#3$XNJ- A4RE/A.R.S@14L*ZL [#_UV79 M?#OH7J?DD^9^_0TE6;3%$9WT?53:M\2*-H M-%QQ60Q.CZOO;M7I<;DQN2S$K2)ZLUIQ]?11Y.7CR2 >;+_X(N^7QGXQ/#U> M\WMQ)\RW]:V"JV&K92Y7HM"R+(@2BY/!6?SA/*7VADKBNQ2/>NJ_*1*"L-VNR'RC?5 MW6"-+&P8[XR"7R7<9T[/RT*7N9QS(^;DSL _B)'1I%R0YZ=D,]E M89::7!1S,=^_?PAVM,;0K3$?:5#A9Z[>DR1^1VA$&8+G_/FW)P$X2>O;I-*7 M]/GV[.X/SKU?7OY.S\Z]7WJZ]7%W>8UVJM#-=J MU_4'O>:9.!G PM5"/8C!Z3__$8^B?V$FOY*R/0>PU@$LI/WT&LJ0X*J0Q3WD M4%YJ_1:SMU8RJI38LO-P.AK1X^'#KAF^#)W$XU9H#U[:PDN#\3F;_QL66)WO MIH2BE)5%)G-!BEW<\(N]SNQJ6*OR04*NDMD3@4JJN &1NA1)(X7^@)F7OF8X M7TG9GK]&K;]&P7!^$J TD[RNO\6<\%6IC/Q/]05F>:TNW0E:3"?=R")"\7B$ M1W;<(AT'D=[:.%5, T1'Q,],:%TA+F=0[8014+D>(.ZE>L)PCWU(.XAJV(A, MDN*H)RWJ21 U\!*P3F'Q+GEQ+\@]T#"&;^(]^XA..O@0F7B"XYNV^*9!?&<[ MX;8$ 6PIE(+5D)4K:"MT_8,2>44FL&Z O;(?1Y9E(5<>N<))8NHA3=BT8XTO MP\8,MR:.'/5%X7R6.BLWA2& 6B\Y+!@"V3$G&Z C12Y6Z[Q\$@)8$:P@MQL% M4=&"W.8<#4KSL#V/=X,2EMDW8X?!XT/)G@DQUV2ARA71' I8%9P54+M1=5#$ MWQNYMI7N757,X/>^W&H>MI?8W6@@,CT+-J;."GJ@N#3)) M()T$,_PD+P::5 M(&]FHA +:5#V:/3N@J&TNUH1H2,6]660(_CX ,-7ZU3;/HAK+4Q=9'+)9S+O M)X3X50G^M;3MN\!1?!SF^*^*SP508+62M"51(1_X+!>HY

M6#FRCX/<>'K55'R("@HM]:$E4R^/$"D:)7UKV#%K'*;66R767,ZW&=^0E5E" M'V=1HC@1OF1LW 6*2=E9 <7J>#4^0*S;U;/F3[U+QZ? M.(GC+D"$**,>?-01)0T3)>!3&RC-C_R^2(4D=X-,@FK7]MEZ%MW[>2E9=Q M_R9^F] MJ(@,U(<^G(Z5:)B5/H%KM9%9Y=1%TU>[SD($EQI%6(I%'G)?:C+J M2V#'4C3,4C=[-?] T:(^&XVC+DQ?AO45!$=7]- DN)^F;5>Y!;ZVDP(^%%*$ MB&+:+62(5 ]74<=5]#E<=,G2X:Y,67=L*OI6U_L\^Q9'*()6'(@DK> M3,>SC08!K=W:L*'E5DAU=SN;?3^$$^/)=&=,:;;T?+F>M9$XXDP.#)';\1: M0OI!TIFGJGBVDR.*&&70;@E"I9*>I$L<@R9A!FV7RT978V.UIZ.?L502A$#C M*66>GQ&Y?MP[N\(OVQ:^O+H^NSY_QK;PZ^X+_S_&QL01=!(FZ,ZFQ1+XXL@( MM2*S4H$RN_.*^@ 9#<=)-VZ^4-_Z<+RTHJLDW;G8PQF5&?[QV9)V$ROQ/&Y-7+-)LP8NMINZVUTX'8LI65 M1=&\U'R49DF,@H%UHYX:.XWBA>997SN5("-IXE5@3*BG"TPFFDNV MKUB:$6IOL$)=X1-[DHQ3KTH$,?RJC:Y18.%&X<^=;@ LW*SP3H9A+WU9Y V' MX:?]JC6N)V#AGJ#N)"78T6,&0NHTFG2[R/!3?M&*U/4(:;A'J$KB$AKE&0=K MUE#!+279]B:OCJ79JXROI8%KWIXB00]_(#-]FG8W:\-P?M56X8?_JG&N 4F?N4U0O6"SYT$.F57K MVSUKA.W"(&+=.6>XV$?T!X@/?TO4$L#!!0 ( />!J5C70X0$H@8 ' / 8 >&PO M=V]R:W-H965T&UL?5=M;]LV$/XKA L,&Z#Z+=E6M$F I$VW M8F@2-.[V8=@'6CI;7"52):DX[J_??>R+.-\U]"2135 M8UW9<#XJ8VQ>3R8A+ZG68>P:LOBRCV:A_\AR]OKJE/?+AC\-;<+>LV)/ELY]X<6'XGPT94!441Y9 M@\;/ [VEJF)%@/&UTSD:3++@_G.O_;WX#E^6.M!;5_UEBEB>CUZ-5$$KW5;Q MD]O\3IT_/[.^W%5!_JM-VGMR.E)Y&Z*K.V$@J(U-O_JQXV%/X-7T.P+S3F N MN),A0?E.1WUQYMU&>=X-;?P@KHHTP!G+0;F/'E\-Y.+%C8ND9NJENM&Q]:3< M2MTVY#53%LXF$29XXR3OU%TE=?/OJ#M1'YV-95#7MJ#B4'X": .^>8_O:OZL MPH_:C]7)+%/SZ?ST&7TG@[\GHN_D&7^#BDZ]-U;;W.A*W4<="7D6C_J;U)T> M5\+#[D)AA/K ML!9H+1FB-J7)RT1*%9QRK4=K:IR/>EG1;ANK3N]9NK4FAM?JFEN1=];D:@%W M,Q3)@\&:14#NHB?-4%)PU[&Y_V&L4!% ,)NGDE G8S6;CM6B) 4_P+8ID,Z% M@D[VT02\KAMO MY)U!;7]POUUGF TZDQPA3[L2E=56U?NHW%UM N@RF,]F(3 MM.Q"1K(;H6;2."1@B]3G\?TX4Q_@R#93;[75A4Z!Q;<;PG]?89GP(Y1]W#FC MP%+JSB:*ZUY<8>T @J9>%9(,*^]J,0T8IDI[OV\\4[\1NK;%BWL8T[""M'B" M!IM+]($!Z.?Q'^)L"GQR=-D&U!#"L$.2$J>J#HE8NEBJPM6 M"M/\;JPN66XEHD?R2[*OQD@Q#?)IT!U+'=6&D.G!K&UV$ VVDNJ#^QKK37.# M/-A^UQ*_U7:ZOR4MH%,V16"(&-,"U9PZI0 VA :?M8?8".HC < MEFQPX8 08>V!"P!E! R%6:V S8+E;4-"SN $NA5B_W_V"A-RU_8- 858FR#' M&7ILN&,A&[C7H1&#+-$H+DA>2SI]EP/-Q ,R?GL4LO$(-RG0!\UA/ZI"'4,_ M1ES'+KCHB>,4.&B:?>[]R)&<3]_P1WFEV=QM^ZOII:NL4=DXO MO=,%?#IF*MOW7AA"OJC0$(]S\PW^R7 03V4TT=?6-%Q? \C+Q?4 @4.ST8AM M3S$'"$."BT0"VS69YR&5P%(:1,)WQ;\D2G(5:&84:"/KBGJZH#3YOAG:S8[< M85/@C/ H6+#_+56/UXTI=A.6K75IDTFK1V^5H8Q\SSD;>SDM+D2NC$ M#OH?E"(!L.,@XOVI0X#@I#2,RJ'D^$(PG%EVC7T0-%TZKYV6CYY@K0=2$)I MP:<2Y5+9.DOBS).30C\>A ZN6RLLX%!QT*Z>)N8P(GSH)ISQ_?]WE),,!!PB M<+I.APH^4&0"8#6OQ\0<-.%V(AK?#=?(R MW:)VV]-=]*-TQH!.OH+H=/SKSR/ET_TN+:)KY$Z%?H5$D,>2N#OP!GQ?.=PS MN@4;&"[9%_\!4$L#!!0 ( />!J5@RT3IH1Q$ %4L 8 >&PO=V]R M:W-H965T&ULE5K[;]LX$OY7B"RPZ *.$SN/ID_ R::]W/41 MU.D6B\/]0$NTS8LD>DDICO>OOV]F2$E.G;0'[#:V+%+S_.:;H5ZOG;\-2V-J M=5\657BSMZSKUZQE>_. @K;W3.B\KB8'QX>'I0 M:EOMO7W-UZ[]V]>NJ0M;F6NO0E.6VF_.3>'6;_9&>^G"%[M8UG3AX.WKE5Z8 MJ:F_KJX]OAVTN^2V-%6PKE+>S-_L348OSX_I?K[A#VO6H?=9D28SYV[IRU7^ M9N^0!#*%R6K:0>//G;DP14$;08R_XIY[[2-I8?]SVOT=ZPY=9CJ8"U=\LWF] M?+-WMJ=R,]=-47]QZW^8J,\)[9>Y(O"_:BWWGHSW5-:$VI5Q,20H;25_]7VT M0V_!V>$C"\9QP9CEE@>QE+_K6K]][=U:>;H;N]$'5I570SA;D5.FM<>O%NOJ MMY]<;=18[:NI>$6YN9K:167G-M-5K299YIJJMM5"7;O"9M:$UP\B4 M8/R=V7O[ZR^CT\-73PA[W I[_-3N;W_@'O7O&W-?J_/"9;?_V27[D[OOEOT9 M0F3Z]>/'R9<_U>=W:GKU_M/5NZN+R:<;-;FX^/SUT\W5I_?J^O.'JXNKRZDZ MU\$&BJ1KVJ&")3D!JUQ]#8:N7X;:(J,@[,W2(#,S5ZYTM2$U,E<%:)+CUUS- M6W>$UAW*5EG1Y-BG\;RTH8NT>;UTLCW]LEZZHD XKROL$YI9L+G5'O89JDF! M_7I&M%5M?!3AP8Y>5T$S?@2UU'=&S8RIE"DL4I$E;%;0K),9-PY9)]ANI;TH M#HD>4816$K#:>H.\KY?IZ62(E8>B=E7 2 M3&:])'?QN5O1;:*3"ZIDM;&WC5KD-6>%"X]D7T)#4@<*/ MKI&GD,=I 7W>:2YQ\6YQO+DS56/X'G./BA6P<=YX,F2WALT*^[@<09#5#?:' M48#? 6(V!8D.K;V:>U?&:&JM-%07QM>H".FFM+>FV'U,H%*TY)SB>/KJ*KR"XP:+:$ MW8WDJ Y+-8?9@D*N\F:,&+:,P132\TS>14894!@G#>#GUVCPI*C?$;YH/.(/_]M*B%(#$"DW8\W M8L3H^SQIVWJ4=Z@S&=+-7XN=1Y[9 5BGF&;)9X"UH%LY.G+.Q:LRLS]4%?#S@?]4EH!+YTNKY!9D 2"5;\._3)139A_]+ M3NH4L0R:7"+@:P /0QO#&8E3Z@UDJ]4U!PSD)S!?&UG@NR=PK*V7%K(#LB2J M0@MTN>'8)=BHV;@S7=TRHH=FQ?:E"VK1H/(@&B& ;)5M(Y?02N-#J@M $J4Y M)FTJ6"O-?@4N+$QZ;B#W.9_32L3)1JT*\ 2)FX8B;-($ M2ZV@^#4C(A)(DK"TJQAFGBQ'\+" ^$'J! L _*X?^OB[@!I0.-QXVF"2JCIB MR,"]A*TDR23!(:?V!9 5(GYP@W]DJH$9P>C,WTP M7:(.'N;0@+!N1YH.=OFS=Q%AWU[QC>G(Q$ R1P)DKC,JMIN!% )LKCRQE[#6 M*P$-NKG/<\9J*CEJ;(]VNW'S?<1'5;Z9 Y("-_ M,W$(=33+ML5;XWYO>'X@<<\F4%V=-QZB B)I[L#+ (#<[8X.A^IL?,C_'ZEC M];ZE7E+#NJUDK:WX;I]S C-H M3J87Z@:T*E-')X?8@T1N2\7#_ZFK^*L!7%KJIR!$^SRB;=:3U55-)N&Z3&R? M>4_K6J;M/2;D(@MS)"? A?.LHZ2U0GLSYK2C WKBVV(NI1&R$K3/6VW=,F MN-BU"T7436FP4#\=.F'4L/2;S9T59&BO4J[\N- 5JD^A99BM@!(1(@0 MB]I-%T&."BH%$NL4>3?U8[!KWF2B, TG4')#OTX=':H7A_SI$Z&,D2E$7$/6 MG\9%G+UD8+4HW(SH+2A486%1K$"$N#O),LXH6H@G4X>!"]FR4,E3@.G"CL'YF762!\7J"-*X!A,:8G)06'G!4,OJSOK745Q SUO MDOP$Z,$L.)R"*0KV#+=877O7V;L3E!J/TDUK]! EGBY?+Y::N)=$/MLI6R++ M^0H\CY@G9SLO3I@#/O_FWR2Q$ D 2 @)P= YAM3KFH(;;,!S2-+G1Z$*[+' M)T=I.XU62((JII&B]W64Y F-0;$SRP-FRR9C]F0TNRML0)Q*LHIWS6+)8K6# M)-3^23GS)/2%\X PB>24SO&WE-)]-+W\U^=_7$YN?OUE]/SX%6MR.9G^*9?. MCL_&KUJ;4X]G.XEU$5P4NPN&_06S5,YSP.?,:70SG'74]B/%'&KBPI+C,PW. MK\,6 \\-)\.@599#R,WK->5&7_,_:"^.^JM2+TB177JW=W6:=R:+T4@HP)Z% M8T+]P"%;X:LF-Y=2Z>?4:'3IUA?,5C>7TQMU^7':2H'/+9CV/=8Y 1%N5TW! M$8ET<]DM707MSEEQ!FV6DQJ:G@@_=HUW,R1Q%O;IK"#MPMK&M60N!I6N*DC8 M$RZB'6@H4#,:/>:F@LM(F(%T:#*OZ%@8-@AMQS8IYCJ.&?"?L/#1.#%TM!P MO,)H&A1LMX,/Y>CQ.;J?L6F!A!5:QX3!(9_!U(NX(=W+Y##8>\;>SQE8+"1) M;2YA0A/MRHE.M)/"-QP067&5U# 4+K/4Q9Q9!0&GV^Y7N<44&GH!,NUUE@2Z M:%M:)HW;/W;]+OFV&Z92@T$X+>R4BB,2AH85JP;&(\5BLRL@%5"A[%RF2>8> MV^\L1E"!P<,5/-OIC"O7V6!X'HT NXD+V23.? GKXUYJ;D@$I'-5+R&O&#O6 M5*HX1D.LGMQ@)"59D?N\+1V&ZEIO(D/T,I\]3I?DM-].X>6PA*;4LC%9G::]AHV/7R M_7:H,EU>;/7TL8$HN*'OAFO6;.>-'$/P666E1 4XIW2W/W1A ^:IN? F=*& MT!UP$"SI3<(8AGA"-+D;W#VXJC*%8N9)(T+YEX=XD6I\ WFF?@SW7_$HM3(/ M)JFT68+9!!9LLBX]<)G*-$U7JYR*-\ 0]G9M0S(%",CYY*D:'>-)[4'"UF?2 ME%NRKM&G<3\:%8^/\B][E%O7Z-NJWNQ3__/XZ&:@/A#JA(?-;B%7GVQJSX[' M6]TLO@_Y YJ=E''ME)-MQ*T1N82X-/H'+DB%-"AT?SN [^J.''_PUW[D;^_K M9H5=2&U,QU^R9"6H2.:S7.G2#%Y^!V.1G>42L#+TJG?I5SC4PDF6ZIZ(8 MKO8C$VB+;V+BVQ4R>CRVGT&.-$VQ8134>1P7QVE1*E->^HQ6C9RF2J63OID' M8Q([M"4[9S[GPDFB$?M:.O)^G/C8[DAAI]R=HQD]*<]HG""42#K-LJ1$0+>B MZ"45H!S%:J]#K_5]?#KPO/%2]'@"&P1XO)R(L2=P6T$E*P5B3\RVE7$@<:L- MG]"T]5K"@[G1@XCJA> #0*=!H&OJ>/1$@>G:M?PVR^,@WSNKH=%P>X*%ZBE# MMO9DNA?0MG>0U7-VEQ.Q&R?J^$")AV? #\KL[X8;K>X]@&TI_B\%4LS+P4"U M=61.KT!L5/O*3P0=AM0$H^H%C?ED=OB%4G)*L\-)2ITT%C#W*+.&*>CVJ!$X M<9LDAD1LA'W^)3>SNA//\"J>#3D2<]? LGTH;C%\W@[JP'4/P.[K1YY!=Q.N MWYM<+L[X=0N*2-V/_OYJU:[F5N+[,6D2J)Z!^1.ARUXRH[RV+86W6P7,GQQ&9(&EAJH3V:M_G3^ M-B'3(^WW0-+-2J!]!#".#T=G@UT5#=6'ZMJ0X?/[(PR>LTOHE$!0@SI18N 8D?4#S8,K?HTGL'3FG#JN'#.3I;3$=0U!W0 MW428XQ#+FI:><19&#.D@2!?TMD)2-CW,M 8NV, K[F-)T)G)--43++8^9AG* M#*E4V_WT^)?P ,=+[SVU770(Z?VSUJ4)Q&CT2BR,1OQP?#HX.ATAO0;/3TX& MS\/^@*%(LRJRA7A=L8$R^Y^"+/"+*_.#I51T=C M_#WYD? _Z^2H6;(]=!N=G W&+YXC 0:'9V>#T]-C-?F_W;[M[+ZC?\Z'_?=] M)%?4\='QX.2,CO^/!\@E:'0]: M>B_9O4_]S17AY9V<-PM/;H^?1R?Q?8:'5XZ9-K579=GM=P8/> MJY[H[5]9W8BKXIVM\L+MPCO!1@/D'B.I8?#YR=[0L#3 ME]JM^,51T$>T4_QQ:5!U/=V W^FEC_2%'M"^2?SV?U!+ P04 " #W@:E8 MA^73R@P& #-#0 &0 'AL+W=O=C:!\668Q6VE)%D O/KMUMR',A M>(#8:G7WUW?[9*7TK2DYMW!?5]*<]DIKET>#@Z8ZFH0A^%H4#,A>[,3=W:E9R>JL960_$J#:>J:Z8=S7JG5:2_JK0^^ MB45IZ6 P.UFR!;_F]OOR2N/;H).2BYI+(Y0$S8O3WEET=)[2?7?AA^ K\^@9 MR)*Y4K?T69+ \.>.7_"J(D$(XUI),;'SVOI'YSM:,N< M&7ZAJI\BM^5I;]*#G!>LJ>PWM?J+M_8,25ZF*N/^P\K?38<]R!IC5=TR(X): M2/_+[EL_/&*8A"\PQ"U#['![10[E.V;9[$2K%6BZC=+HP9GJN!&YGS_"G_ M !%UL.(UK/-XI\#/3/EGSG+U>7/J\.*J4([-D&3_M82D8KN]X;_;V330*CW> 33NPZ2[IL_/&X(DQ M<*'J.>)UZ?M.F*Q2IM$<_KWA]Q;.*Y7=_O<<]MW2]S'<9Q?_?+^\OKRY_/H% MODI ;VXXH$NYYCD(B?YF4'$L&F +S9VW89\8W[Z9Q'%X_,G1SM8T=QH='VP44-?A M&M1*TO\"SJJ"U=XAJU+AO:HB8%;(AE-X72B &<=<,\D60BX@%QJ1JVT)#28K MGC6M?%.*91]ND'$+%FJH\3=#F]0?SC+B'NQ*@51VB]1'$$+GCE*S!_='SX8C MXKPE^HNDE-]G%'.$2-B7#8HB%$LM,@[J#I'2N<@1D"@$FU>_CFP!AN#:S0%ZS"5,%DS\E#"Z5RYS;B$,8A(O5662R*;;4%[,5QD P3#*V! M.>?RD30\*12^K.$R+BX<]K2( Q3S-D[1* T<2.F M.$W@*[I08UO5FL+:JHR#:#2%*XV#3ML'IY@CB*4+?10,I^.6;XT\& U#[)>M MWB5[<$KWTV"4IG! %-V@!?P>)Z=!Y4A)$._!EOK'UNW'XPE>>,<+KLEZR^X[ M^@-2@V0:.?H<"ZC#3RY257!=!3CM9OG(KX';;Q_ M8D8:*VJ?-U2*3&BX8U7CTN+%/-P*([6RA<]= MN.]>W"=18"VAPQXXT^: !O:.R& [>#8K,(^'P32=0C3LAW"SR8SHK,;[BS_BJS'48E^]_,]G@6@\>3M+OYIZ?,#A+GRR)6^@=#WSCV+(; MZD))&HR',3U,@G2X&54-F=F1T65@2BJ>/QMN[@9OXO0'-L?2AMS-\>=6N,&C%1NS9N$^) RX&>"W[>ZT M^U8Y\ROZYKK_T$'#<2LQN!@5R!KVQ_AIH/W'@W^Q:ND6]KFRF*+NL<3O+:[I M M(+A=ML^T(*NB^XV?]02P,$% @ ]X&I6$KTQE1G! 20H !D !X M;"]W;W)K&ULK59+;]LX$+[[5PS4HDB -+)E)TU3 MVX"=)M@ 31'$3O:PV ,MC2TV%.F25)SLK]\92G+5/'S9/=CB8^;C?/,BAQMC M[UV.Z.&Q4-J-HMS[]6DQ6UL465 J5)QTN\=Q M(:2.QL.P=FW'0U-Z)35>6W!E40C[-$5E-J.H%S4+-W*5>UZ(Q\.U6.$,_>WZ MVM(LWJ)DLD#MI-%@<3F*)KW3Z8#E@\"=Q(UKC8&9+(RYY\EE-HJZ;! J3#TC M"/H\X!DJQ4!DQL\:,]H>R8KM<8-^$;@3EX5P>&;4GS+S^2@ZB2##I2B5OS&; M/[#F<\1XJ5$N_,.FDNT?1Y"6SINB5B8+"JFKKWBL_=!2..F^H9#4"DFPNSHH M6/E5>#$>6K,!R]*$QH- -6B3<5)S4&;>TJXD/3_^;CS" #["A9 6[H0J$:Y0 MN-(BN=Z[8>SI%):-TQIQ6B$F;R#VX__V: MR3M!7S=YC]+@8G)Y W>3;[?G<'4^F=W>G%^=?Y_/8#([@[E9RQ1.DFZ8\9=_ M/K>(\ T?4$&O_B:@C:_'?=(C(02RE_Q+0^'#_($XB5"8TH6ZRH#&AY1W\0QAEZM%0SU3%F"4MVYD-P MIL6?I61/%H; ?Y39BL-_"),T-3:3>J6>&I 5,R3M1HBHH$TE6[QX@M+QTTG\"&:(2V9J]35Q1,Z^()N%3+5(6T(G<&>DF(AE?02W3X4 ME8\RH(QI0;,BA;MQ*J6:=*>=26%*QB?9U]T,MX[$.ZW-YTE>1ZPS<9P=OY/O MG%$/)'T&(M<[F1&_0*(Q^0D^O#M)>KTOG'*E,BLJKO>PUSOH'G^&?1I^K'_- M4N?R9@L%W2N:ZJ]'>9E MR.FFZU1]Z5E0YM5BZWIZ+C$5BJX$9.&ULK5?;9H2S>1;FV9N1+7'<2QQ.IS4.G#Q"Y$E&3@ * EMVO[P*D&-M1Z,:3 M!TH$ 2QV<!8ZW0MZJ D"3^ZKDZF10:+TY&HU45D!%U:'8 ,>>E9 5U=B4 MZY':2*"YG525H\#SDE%%&1],C^VW&SD]%K4N&8<;251=550^G$(IMB<#?[#[ M\)&M"VT^C*;'&[J&.>@_-C<26Z/.2LXJX(H)3B2L3@8S_^@T,N/M@#\9;-6C M=V(B60IQ:QI7^P8 MRY(J.!/E)Y;KXF20#D@.*UJ7^J/8_@9M/+&QEXE2V5^R;<;&\8!DM=*B:B>C M!Q7CS3^];_?AT834^\:$H)T06+^;A:R7YU33Z;$46R+-:+1F7FRH=C8ZQ[@! M9:XE]C*7H:]!I\3^4A"7V7!%X0]=@+N\A# M:R_LB5P1+2O!=QK?KMZ]([/K>:*6;S5JS(K%Q13$#3\G' )'&N M*G12FS[4)@=>1J5\,-C=T;(&NS[C3,.PQ-*0XYPN?MK$C^[9B:_8 M![]W'R9NDJ:OH[$7XD;,*B$U^[?I/X@G\0N;,W:]] G ;8!;0,V@2.D,I2\W MHF/*XQ,Y^TGN MNPF2PP]<;QPY# M4X:RN\0#C=V:KRVC2B" +TJ!\XP]EU)@)&<[1LX:HLZRK*[JTH+Q!.-K/* ] M&^R\[27OD7-FSP]@\&R8I JVL5L1N.B#V0H/>6%? MV-\,4)A_A/,D2?X!&YJ\8EL"8C& M:0\^T61BG^&/12;PW-3S#7<2%*5&\KX3&%LO$)>F;O0D[P2M3QJBFL6Z+,:3 MQQHX2-2P!Z/V9O_!9NH+SHL[L-K.)$$I8I4%L%:PJDMBYBA[VL>ZWQ22#=4: M)#=U95LP3&3S$3+!185JMD075DRK7:'9HQ*XYW"_0?UK9':)U0CAKBO(78)5 MQL@\4:CZYAHQ-..U"I_NM;$5=YL;(#XR\+_!#Z&:60Z8D,O-TU" MTS#G+M0\U#!LC&W#2VV/.2=-XH#L.\V/'EW ,)O7]III#H^HTLU=K/O:W61G MS07NR_#F&HQ58LVX(B6L<*IW.,:+HVRNEDU#BXV]SBV%1NFPKP7>QD&: =B_ M$GBQ:1MF@>Y^/_T/4$L#!!0 ( />!J5C",>2#]@, #(( 9 >&PO M=V]R:W-H965T4/-%J5G+BN[%90$H8 MHHDTN0A(\K#:A\8NH!7;S72W0_+W6VT#PZX87G!?JDZ=NG4QV KYIM:(&CZJ MLE9#>ZWUIN^Z*E]CQ=25V&!--TLA*Z9I*U>NVDAD1:M4E6[@>8E;,5[;HT%[ M]B1' ]'HDM?X)$$U5<7DYPV68CNT?7M_,.6KM38'[FBP82N/$G:N0>4 M@E=8*RYJD+@M.EJ#\60AQ)O9W!5#VS.$L,1<&P1&GW<< M8UD:(*+Q/U'OVV]9U\63"%8U&^\D*OAW9J0X%+UI1Z*K;?<>=/ M;/!R4:KV%[:=;)39D#=*BVJG3 PJ7G=?]K&+PY%"ZOU&(=@I!"WOSE#+\AO3 M;#208@O22!.:6;2NMMI$CMLUC%L>*-7 U633:+KY#O^FPP]^@Q_"/6&M%4SJ HO_ZKO$]4 XV!.^ M"/NEO!Q>= MAC,]U%<;EN/0IB91*-_1'OWQQ4^\O\Z0C0YDHW/HHWV2EL=)HHHYRA'\/<ER-_^.<7_K(73_+]2A4PG+Y.'YPG<3A_O8?SX,)]>C^+V;?X?Q\VS^ M>#^9SF"^)G*BI%;G]0HT6Y04W(T4[[Q 8$7!32M2B'G=O2=M8R[HL0#12&KR M(_?R0PVV_N7[&G1(.2^;PAC8*RP^#_? ZL)8+!J*C/[<8'MP)$AOSQOJ*Y@A M795*0-L"?F3-UY*.CLO5,C5F"BVTIB-0;5O7Y9+MTKGC M3DRG_O]\N*!,.5G2,XN>DZ2A=4=7 M2DO3N)'CISV*CQ_VK.N&DB3,DP]??Q7,Q$P#R7-XP37/J3C_)/$L3HE6G/6L M'WR),,LYUA1+2.*0G(C]T/J&2YI#Z#*4HNT.T@I"$ZPTS(AAWDBN/R&.?,B2 MQ'K<>1J0_\0F/>$IG'H-W*-WG ILU4XK19W0U+I[T@^GAX%XWSU0" Y!0 &0 'AL+W=O)[?)1)C;?:;&R)Z."YDLI.6.EF\(\K&-5_C$MU#?6?(BGJ60E2HK- *#*XF[&)X/AWY M^!#P5>#6[JS!5_*H]<8;GXL)B[T@E)@[S\#I\X0SE-(3D8Q?'2?K4WK@[OJ% M_3K43K4\8\Y_:P"QD1&/'D2-V'Q/E'=.T94I>84IAKI4K+5RI M HM_\1&IZJ4E+]*FR4'".3<#2(='D,3)Z !?VI>:!K[T0*D6G(9KH;C*!9>P M=-PAM9C;6V]+-]I/YZ?EW-8\QPFC<;!HGI!E[]X,3^*/!\2.>K&C0^S93*N< M=!D>>G;'_N4'^9^3S]\?O'E=@&SA^7][?QJ ML83+Q@BU!E=J1?7 M86@MY+I1KNWLWMO?"Q?M./P-;R\5RK86RH+$%4'CP>DQ ],.:FLX78?A>-2. M&C\L2[K;T/@ VE]IZIK.\ GZVS+[ U!+ P04 " #W@:E8;.63Z:<" "[ M!0 &0 'AL+W=O=7$%XQ M[.#5GTF3+C'0] /+H5V1=.UAV$&QF5BH+7F2TK3_?I3MN!F09A>;E/B>'D61 MXZU4SSI'-/!:%D)/G-R8ZMSS=)ICR?2IK%#0SDJJDAERU=K3E4*6U:"R\$+? M'W@EX\))QO7:O4K&@=Z4)5-O4RSD=N($SFYASM>YL0M>,J[8&A=H M?E;WBCRO8\EXB4)S*4#A:N)-;05A@ M:BP#H]\+7F)16"*2\:?E=+HC+7#?WK'?U+E3+DNF\5(63SPS^<09.I#ABFT* M,Y?;[]CFT[=\J2QT_85M$QO%#J0;;639@DE!R47S9Z_M/>P!AOX'@+ %A+7N MYJ!:Y14S+!DKN05EHXG-&G6J-9K$<6&+LC"*=CGA3'(G#<(0OL),O* P4G'4 M8\\0L]WWTI9EVK"$'[!$<"N%R35*>IDA3M9T_ HX2U3IQ %+H1^ M&!_AB[HTHYHO.I*F!B/AA@LF4LX*6!AFD)Z7.9AO0Q;2"7-@;7 MS!91FAR5AB"(833L44DY-4 &:RDS#;$[&,40NO'0[SU(0Y7F>WF=6&%1%) 1 M^JX_',&A@GE[#56B6M=C0Y.(C3!-;W6KW62Z:!KR/;P9:W0_:RXT%+@BJ']Z MUG= -:.B<8RLZO9<2D/-7ILY35=4-H#V5Y+>;NO8 [IYG?P%4$L#!!0 ( M />!J5A%9:60;@, + ' 9 >&PO=V]R:W-H965TUT/.@,J:]"$-=5-@P/90M"EK9 M2-4P0T.U#76KD)4.U-1A$D5YV# N@L7,S=VIQ4QVIN8"[Q3HKFF8>EEB+7?S M( Y>)^[YMC)V(ES,6K;%%9HO[9VB4;AG*7F#0G,I0.%F'ES&%\O,^CN'/SCN M]($--I*UE(]V\+&Q&8-%ZI#DS@N;%%61M$J M)YQ9_"X-PA3>PRU2;'H6&B*U2V'1$RP]0?(&00J?I#"5AFM18ODC/B0Q>T7) MJZ)E!+]Q&FCB\]$:$&(^&&"R8*SFI8&6:03I8Y&J^G MRX[3V4MRH5M6X#R@6Z!1/6&P^.6G.(]^/2$VVXO-3K$O;E%KQ %\;E$QP\6V MKPO\^8#/!I:U+![_.B;Z-.TYE?CV^G)UO8)+#:3[B1U#82**0V< ;9*+;? M*()5)95Y;U U/WJD[O=0(6QD3;W#4G -K"RYO<]41BY\4W*W>TT=!V2G/ GY M:9";?RFZ@'LFMF@7%-J.]5V6W5_#.67A!9G2[V XLF=F/(SAJ[O9%!Y[HE ( M?@Q[",T(^Q^0S;3LA '*!L)HF/Y,XDRG*!AT4CU7S=F:UW[R6 C^--VQIT+PB!5Y'R23.%=CSR#?)#G,5PQ7<$-50<^'A3#^["&"LO_ M]E,4R/WG+Q221MJ)7.EHX=O'"SY09BC!;SJEU",&_^MU9))04N"QJQH>=-$& MU=:]%1I!J5B1)W.^_ 0 M (P+ 9 >&PO=V]R:W-H965TVTSX4?:!6(XDPE]R27,O^]YWAK@[+BH'V02M> M\W'FFX-SNC3VP2T0/3R52KNSSL+[ZG,E6;Q&F4?C[O\?EPX ^)2[\0*58B!2XY\6L[.^D@6WQROTZV [V3(1#B^,^E-. M_>*L,^C %&>B5O[6+'_#UIX^XQ5&N?"%97,V3SI0U,Z;LA4F#4JIFW_QU/*P M)3#XE4#6"F1![^:BH.6E\&)X:LT2+)\F-!X$4X,T*2'WXU' M2!/X!)Q)TS>B8M6_KR1SWXAG\/8:+]P<*6G.'TI'Y,N:X6RE4+GV9N M8V&[D*<19$G6>P,O7QN8![S\#0,=> /74@M=2*'@S@N/%%C>[;.W@>OMA^,< M^>PJ4>!9AY+ H7W$SO##N_0H^?*&LKVULKVWT(?L [B4KE#&U1;AKWM\\G"N M3/'P]SY=WT3;K^LA>_ORZOP>OJ'W:!V8&5Q8G$H/>0+:># :@=Q0+-9^H. H ML)R@7:WD!]_B"T*@?-B#,RI-K3W^^DGX'(R%=C.):AK!>$2TQ-EQ(Y9F<9[&X:*M(8F1T'LZR/+\;4K[0;<4#M=+V:!9BK;83%9+]PLBT@@-H[G%$)P@=:%J2BH0\#[K M1TG"WM&?+#X:]4B<4O%1XIGVIU8L@5Q0LO<0#CUA?7@WR++DRSVO<@J$>?KE M(Y _&#!- N &K&ALF:ULV4:Y79]:F=K"!31OYDB'+54NOP 66]\:P1;*#ELK MC;K!]ETJ%X+5G%'%WJ7TB$"7AKF^P\HW/&8-CUE$I?%Y-W;'M)2UXV9[-2>H M#49Z$M:.-_LY>^\E6!02A!6N+/E'5A3($Z&HL"#'/UO[FJR&I5_)"$T'FH1A M1VJHJ9+:ESS2XU78FNJ8U.1G=#Z\1%/*U'#.84'!3]-'M)J?(2(N%#M2PG+R MT.,-/[MW79B'(R&\@I#TDE /6P_=W5S?K@.%1 1=HQ\^T2-'E64:[FSP*E4[ M4AQ$52E9B(E"8M927D<4E-0O<,JS<@KI.GK;NW EB,40J/O,6TJER.7D; (U M5T>J@EW'92J,D M/8:1FHFRK:O\VHQ>&Y'O10=?])X-ZT@,R\23J90GL>X?CK0ZI1#L/?:"#@M.N:9;6J^M6<]1T6)OC M39\Z#H'N*+9G))ITC_L=L$WOUTR\J4*_-3&>NK&ULI5=90H;]48YN)R;*KPL9O=Q#9EO+L/ MJ3S(,PVH/(R(I &37Y]NS3#&&+.;Y %&1_?7=TLZ72G]:&:(%I[F66[.&C-K M%R>MEDEF.!>FJ1:8T\Y$Z;FP--73EEEH%*ECFF>MT/<[K;F0>6-PZM9&>G"J M"IO)'$<:3#&?"[T^QTRMSAI!8[-P)ZE"3'&,]O-BI&G6JE%2. U*-V Y+"6#6OF$F#NA'X8'\"+:LLCAQ<=L-R 5?!>YB)/I,C(!<(B99PU^^PMX>+]<%P\)V8A M$CQK4'48U$ML#'[^(>CXOQQ0-JZ5C0^A#\8SH?'XW 5G)-:L(PRU%OG4Z0M_ MW..3A?.,0OCG/MT/HN_7_8C38GQ_>_';\?EP?'4)%[?7HZN;\?#^X^T-C'X? MWL#0@)H !2:9U9'Q((AX$$'@PVVAH4;/?@Y_X$]/G4BYEBF3G6F*6@M_T?5JM/E>DMDLW,F9.9I1) M1G%_I,-N0:F(L%09F9A)NZ9$2BQE6K/==;^OKI\3LUB2,Z>EZQQ:)B?(\7N9 MLT=K%-J\@TXS;)=_G'<+I .0:Y>R:0?O.7%?@TECBN_/NF^FMSOZV$:-9"X! M4]=[*9!K["TQ)W!3S!_($%+3]2'S[)QA9=-I>U*&<#II15,M( MX2CV^N3@=Y0%G3Y<4/>F4YZ6P\B+_8#6"2;L[M=BQX5'$(8])Z03AYX?H%4;K]':K\"NJ4E4Y#7$^AE@E[SV1*<*9LFSN_R: ML9QW-M,RZ;=UKCEW=>[\E]-E7_E]\U3\OQ7I:@@NN66^YT[SQ76:SQNQIF0[ M6*!!K^]U>S&79=!L!\]E&?6\7M1S9=F#+R7@443$?9^+CXA#H#OS!*7;"0*/ MW@B\$S;#_F$==CM!J5C7 M'B,J( , -<& 9 >&PO=V]R:W-H965TVD;%;IIFO;!)$=BU;$SVRGM?OW.#DT[C>4+ M^.Q[7LXOE_%.Z3M3(%IX*(4TDZ"PMCH-0Y,66#+35Q5*6MDJ73)+H5(HRCZ%U8,BZ#Z=C/)7HZ5K457&*BP=1ER?3C'(7:38)!\#1QP_/"NHEP M.JY8CBNTMU6B*0I;EHR7* U7$C1N)\%L<#H?N7R?\)7CSKP8@ZMDH]2="SYF MDR!RAE!@:AT#H[][7* 0CHAL_-IS!JVD [X2@Y++Y9P_[?7@!.(G^ M XCW@-C[;H2\RP_,LNE8JQUHETUL;N!+]6@RQZ4[E)75M,H)9Z=7RB(,8G@+ MR[(2ZA$15E:E=Y#4.BVH7$@$D^/0DI9#A.F>=][PQO_A'<*EDK8PL)099G_C M0_+8&HV?C,[C3L)+IOLP'/0@CN)1!]^P+7SH^88=A1NP"LZY9#+E3%#AS")= M.&L.U=O0C0[3N;=S:BJ6XB2@QV%0WV,P??UJ\"XZZS [:LV.NMBG76<#/];X M8&$N:.7G(>.=U(>-'[DKL;Q,OEQ_7RYAM;Y>?(;D]F9Q,5LM(?DRNX)U@<#E M>KE:PT+I2FGF'UFGT2-+H->O3N(X.ENNDL0/!V=O8,<,L$Q5%C/8/()+FRNF M,U* 6:6Y<(<^@$^U1(B'O2:Z3JW:H(;F2@SZWI*CA4JK>YZYTRV8!1)F>:XQ MI\,%M86Z'T>]*(K %(RJ=O.JUI"JLJ0JC#>_XT+ !H'=,R[81B!0#P1N M3$WW!:&FBZV]5R?:R'>P5)Z_H:W0,YK5ME":_W;[45O*=ZH4D#YUWO17 MS35%37Z/=BD5=<9E_L2@<:_6[&=-G-++N5Y.W4/?H>W#M01Z5&G1OJK>/_&A MJQN^:#8EZMRW5$/%UM(V?:>=;;OVK&E6S^E-RR>YG$L# K<$C?KOCP/031MM M JLJW[HVRE(C],."OCRH70*M;Q6]XGW@!-IOV?0/4$L#!!0 ( />!J5BT MT.]^<0( & % 9 >&PO=V]R:W-H965TGS8I4^J&- MS[[G\7.^E_%*Z2=3(UI8-T*:25!;VYZ'H2EJ;)@Y5BU*.JF4;I@E4R]#TVID MI0$\=7*&'\/ZQZWS0-H.B,580=P%KT# M2#: Q.ON+_(JOS'+LK%6*]#.F]C4N=5TR@EGLSME$>(4/D/> MM$*](,(4)5;$#L:Q(X.L6?W:+GVTK9Y,?#G ==D M"E4\_=VG]R#C?KV?7 WDM[.;'[_S'*;Y77YU_0"SFXN[.3PBU.P97:T350D% MI5?S1>>[:A3%,,>67F^!&M+(9RD] DI:40]9.X+X#"K5T33@:Z!V ELC_325 MVUO/=^#[7C+^BZ)9<&!%8$C8Z_ MG 2@^W[N#:M:WT,+9:DC_;*F$8C:.=!YI:BH-H:[8!BJV2M02P,$% @ M]X&I6%1H#6[D! [@H !D !X;"]W;W)K&UL MA59+<]LV$+[S5^RPF8XSPTI\BI1K:\9VG$0'/\96FD.G!XAM(UHH'GMA'ZW*^-Z4Z'0UW6V#(]D!T*.EE( MU3)#GVHYU)U"5CFAMAG&83@:MHP+?W+F]N[5Y$RN3,,%WBO0J[9EZOLE-G)S M[D?^;N.!+VMC-X:3LXXM\1'-E^Y>T==PCU+Q%H7F4H#"Q;E_$9U>IO:^N_ 7 MQXU^L09KR5S*)_LQK<[]T!+"!DMC$1B]UGB%36.!B,:W+::_5VD%7ZYWZ!^= M[63+G&F\DLU77IGZW"]\J'#!5HUYD)O/N+4GLWBE;+1[PJ:_F\8^E"MM9+L5 M)@8M%_V;/6_]\$*@"%\1B+<"L>/=*W(L/S##)F=*;D#9VX1F%\Y4)TWDN+!! M>32*3CG)FQL:$B%O3@LMW"7/5S\"EP"-U*8 M6L.UJ+#Z67Y(U/;\XAV_R_@HX U3 TBB .(P3H_@)7M[$X>7'+%7@Y'PD0LF M2LX:>#3,H#5='[*WATL/P]F2.=4=*_'%B"1^X+ANI5PKA[QD^&[AL9/GTSR'B1Z$/$S^QF?!X_>GF^G8& MT]N/=P\W%[/IW2U\1:C9&L'4"A$H)F4-4=P'!1+:YJJ"NY6BS!14RHZT0=8& MP$79K"I+7=+QU?4=;&H)7 -KM.SW:HX+N.M0L=Y$++DK^1OVA J8MD5&["M8 M44XI^#)X',"GBXO[ '#-FA5S :T1",%EKB@1Y,)ARSVJ[EVIH5.-L04=UX+D3T2+P'7*-8X:EW;5NBDH*7,+/,WD$4 M!5$TLHLP2/+(NQ9K3A>LQ\@=,RQK(1NYY$1I%!1Q 440IK%WKV2)6O]\@;"* M(H0H";)PY,VD15"]:E(0CTD^I05Q&T=C;_I6! [2#8HHL6!!EA?'R$89W0VC MY!6FP7@4$<@HW_%\.Q^2("_&Y(1XE'M7OP;L) [R,(;W=A&'&;SW+MX('YQD MX\P*9&E*UZ?_2Q>OY)!64[Q M)8,HU2C)?GAY'&246'$1Y%'H419DM!%;8Z(DI:P:PXRZP$(V-&C8DC>.=*?D MFO>%N/^O 9O3?.(ZQ!+E4K&.JAP8#37:=8Y=N >PK1G;L.R_O[)-P_8:ZKH] M$OU)^A9A=Y=25MKB@*YYUV%UJ#8/5:3K::[ZTCSOZS$ZBGV%^7.\G03)GR:G6&ER0:#C( M,Q]4/UWU'T9V;J*92T/SD5O6-)"BLA?H?"'I+[_]L KV(^[D/U!+ P04 M" #W@:E85\FKBD0" #\! &0 'AL+W=O'7< M\'5%SA%FTX:M,4>Z:ZZUM<*!I>0U2L.5!(VK67 :G\S'+MX'W'/<,AB,=<'O]RG[N<[>Y+)G!,R5^ M\9*J67 <0(DKU@JZ49OOV.=SZ/@*)8P?8=/%IO;$HC6DZAYL[9K+;F;/_3UL M 8ZC=P!)#TB\[NX@K_(;(Y9-M=J =M&6S2U\JAYMQ7'I'B4G;7>YQ5%VI0@A M/H3/D+=+@X\M2H+%DQVG(5E^%Q46/=>\XTK>X4KA4DFJ#"QDB>6_^-#J&L0E MK^+FR5["2Z9'D,8'D$3)> ]?.B2;>KYT3[(&2,$YETP6G G(B1':(B.S*]^. M;KR;SO7+B6E8@;/ -H1!_81!]O%#/(F^[A$['L2.][%G_[^'@=^W^$PP%ZIX M^+-+[7Z^3^Z9\[MYOOAYM[BZA<6]&W](N&0OD'1W#'%T8*OK9!J5C^TC&:G ( *<' 9 >&PO=V]R:W-H965T",938-(D<(!:;6(3 :'O$,A7! 1.//%C-H4[K _?D._<)K M)RTK9O!,B5\\L^4T& >08<[6PMZHS5?C'1Y!$R: #K]_*[7N\_MOEPB7YP-)B=5!P M@SNS*FI68K3@.Z$0?V(P>SCAW@4?>Y@.VC9#KK02;U%S9F .]25 94? M.B:XO\,G"PNATH??AQ1TYW#"8=B#[[:DNBQE<\_=A3E?:Y>*UB'GVEB@PTC+ M]C2.0"HJ7#R"^%-_ '&T&D*\&P;1V"_W.JHP;*LP[&1XLQ;H<8_C9[KGF:HM M9G!_(5AQ4'DW;LZ$P0Y^HY;?J!/GFY+'[^?8C?T:QY.6X\F[:NA^+"Y9-\5N MZ-7\4TTN^%?I!GN/9X5ZL*W" .I6DO;O*/M:MN%YLWC^]^]:6%T M00HN#0C,*33JG= /J)NVT!A6U?XI7BE+#[N?EM1)43L'VL^5LCO#)6A[\^P? M4$L#!!0 ( />!J5CL#/6SNA( "$X 9 >&PO=V]R:W-H965TEE)7>V]?\[LO M]NUKT]2%KM07*UQ3EM*NWZG"K-[LC?;BBZ]ZOJCIQ>';UTLY5]>J_K;\8O'I M,*V2ZU)53IM*6#5[LS<9O7PW'M($'O&75BO7>1;$RM28'_3A*G^S-R2*5*&R MFI:0^'.K+E11T$J@X^^PZ%[:DR9VG^/J[YEY,#.53EV8XKO.Z\6;O?,]D:N9 M;(KZJUG]2P6&3FB]S!2._Q6K,':X)[+&U:8,DT%!J2O_5]X%03QFPCA,&#/= M?B.F\@]9R[>OK5D)2Z.Q&CTPJSP;Q.F*M')=6WRK,:]^>ZWGE9[I3%:UF&29 M::I:5W/QQ10ZT\J)9_'I^>O#&OO1K,,LK/W.KSU^8.TC\:>IZH43EU6N\LWY MAZ S$3N.Q+X;]R[XI[0'XF@T$./A^+AGO:/$_!&O=_3 >KL8_M_)U-46QO)_ MNQCVZQWO7H\\Z*5;RDR]V8.+.&5OU=[;WW\;G0Y?]5![G*@][EO][3OIM!.? M9^(+K5W5DLUZ4N7BFU/T_M+5&G9*3# [:W&C[FKQKC#9CYW<].ZWFQM/A-DB M0@8B3)>(FX6"TV6F7,IJ33+.3.5 5XYO*C%5JA*JT/ RIK!9@K.69@P\8)X@C*6TGG%0] C-)."IJ[7 M<.EZ$7S@>[6D?3&WQC;?*DV?KFL6)C::E,J"*_%L M[]O!]8'X,)E\V7N.R/AWHZ$+T3A1&X2&'TJHI /B5#J$W*5GM%[(6LC9##&1 M-P$KQM(VLO2BP3X8KX*0"BVGNM"U#DOEVF6%<8UE78!#8@<,/SC'[T(:IPGT MO%-<7L6[R;'J5E6-XC'J#MG(8>&\L23(=@Z+%?(Q.8P@JQNL#Z$@-#N0V11$ M.KBV8F9-&:PI2>E 7"A;(X-% XN&,@@&&8PW,DLVH7/E38#&@,#:D $.1&&J M^7Z!1),'F0S$W)A\I8L"(W,,A&G*::'(-&4UU],BRE:!/HMYM;Q[0)Y=>JPJ MV$IO9=$$)RR08B%;&B>A(1AIK;.FD!;6I>$"&8V?KKN,7WE;,TM=!7,N985L M3&H9\%<;'MQ4$KO3,H_W99 E9/Y?I#+__AF+S['&3$5^/!,5)5C26-985FQG MPG-1*?#D@!G(P)<^[HB9U,37IDDMC=->*5'YI-%E4!7)!0+-%I"[\CXJW4+, M(#8GX*N\&$<,709C]/A5907N%MGD?5^>)J_->KBXH MOI!'\<,E,C7"M5?A5T1AI'/RPYY13Q- +S&[!4!;#NYMS-1L4WB]@)OO(SJ6 MG/)B/&=(P0 *D1!IF1,_)WNREE*N83JU^,+A%%Y!4&>E_ 3;[L"1>+70,"TD M=!]S78(!N>+(3DFUYM SE=4/QCNN67+TH1=BWL#=$:M!@%\JV\SKOIY2UD74 MA#PK)$=L'>'<4G+40]:'@K@Q&YO"!\-VU[" ML-=>W@.3B;\ 2+&)DE0F>!SYM"C6O\EN(^KL#$F_3\#F"IJQC7>JSX@ +>31 MG6\B5,UB(.8'U0W$6Z%J0(!K1S0<[#+'SDM$E_3&-JJM: 8^0'G[GLF,,"]MM"[M*=\M:;]U %M<;8F%*O+]VNR' M!=>!W40='!\5T3];$UXR/];+> M_79[V8=4R7:HD(&*_0TJOH<4[T/.]Z13MM18$0>QM4OYN;KBT3;G2,I9=G)] M(6Y0I6;BZ&2(-4CX"5ML_T]-FK\;Y%=-[2D0D?:C*EA;K@%J4BZ7.=0\X3(R M&2EW03J-A::"B3 =A 7(HA@C^$32+SJ9KKJN(R/3#CQ=Z* MVNM]L]L1@)>O\4-_K(>B 0IL*M"#ZU%<6@9JD.6HI;YO9OL-:N!GH8+\^OD; M/XU>/4]K]+&U6JA*(84*Y0L9BI1M!V :"X!,VZPI40ASDM<58=5:>73+E?.F M>E*H\G)M3;'7W<>MNX]_@KQ\T^NQSMR[VD.EJM\"@,O,*X]_3X<>],3OM&MA M%'EE%;EGL5@U(T#C4F9-YQ1!I MP&BN"VR.AN+%D)\^45Q7OODOE7=+ M*/6;2@.+4;+$[O[CQ4)24>$]E.64+1"-^ TT#]\D91OKE3!#F/^'O_,! 9 M%"!4Y:0 T'RCRF4-HG4V$-=Z7LJX$=[X-3X9"B_700J14,'UD>?[2Z"DAV,8 M>*;YS%"SR!AN*\GJ3F]]]&9\>OF)/+R?5__*OSX_/QJR1S:NWIEF)9.!/(;HUA M?\YE#<D6^ MT>7\+UJ+K?ZJE'-B9!??:53+>2NR8(T4!5BS4(RKMQ2R8;YBKF\OI&7/YYG:C ["DNHGYLR% S.G'*5065$3$# MWWKP;>H6]V(!EUH1DV(F0W<9__FR;32.)1UJ5 2\ G66VNYS;-/10= TGF/3 M' [K@30#&P-_1FU4A 5I+,-QI^\X]G[.4#> DMB_H9C0!+FRHQ/0)_-UAP2J M3.5S+1*L6LABQNB' J?9;,1P[\0#_PN4+W3N&@BZ2+T:ANF;7[:-'-)M>X9& M)1W%:5\/4!*'PU"/>ME >,18Z.+X(.60H?3,'R*H.RR_,QF!!0X>IN"6?BM< M_YX%AOWHY*=MM)-,PE$?Q?JPEI@I(@'N7-4+T.N%'7(J91PE05:';B"GDJ3( MC8$-'@[$%[D.2-8&-Z=#3L-52130OF<1UN>/%QE19T@MI"N?+=G0_2CJ:.S> MZWM7RB$Q1X6)=[$U\CUV778W93R0JG6I?$:F?@QD=- V?[H%:*5:O]AH H62 MK> FT( P2O=@@DZ0.B>2QA]5;)Q[A%:.X%L3_A L.A!U!<(1VBK()J*7*-*V M*4B(*+_EI;K\A'!,<@C@>895YHWT=!H(Z5=CX%/IW-?=@/T]9=K*U"'_@ MW;)(%1F?]64\9\5\TD&K>:U-8DNL8 M8SC$4T3SHU%C.%-5JA",/*G![__E[G2 &M\!\JENQ/@K/D&KU-8!&BT6PVP, M%BRRUCWPFM(T':I5.25O!$/(VZ3"Z1I!X!.?J)V*47]_H+W),NJ]>O+V*AQ" MKY_<;?N%*RU7[8FWZ#Z3;KC8;9M!="Z-$M#BT?_+-LA-@6"-5;W>I\KRX>[D MH%=$[?694?_]F8]4'L*^/U+0?7R?Y!A7_;V]TX/QYOM#7P^8 ? M4/7&D);.1]@(N48FFZ=B!04:9_S"5ZHT/AULMXG=7RO@C]W0LKFNF19Z[L%' MO%;BIRQ]VB%M:X82\6S;?P](Z,_;8VKLDG[O?DCHTZ/^_"<:35D2_.?,QO=& M/.J*>2E0F%HJ6S11KWR+VP/X6M4>1,7&5$B]'1@4&Q<KWM MT)*LG-F,D0F11O!V84C[H8FIVZ/ZG72WBN;T1(&,^DH><_I2OBS);U$."KK8 MB31"MMIIU=3R+NR.A-E8CRKX3,3YR&[]31/6!(85A FB(7;(3+6B 4I>KOGF M0P)$WCP8?&Y95,<$MS(F];9-4XAPSHIY2KSH#<#M!8U1_PV-/P Z?0_FR2?;_2L_E*5""_\KA9%K M:N%/HKO'7I&Z _927)=L=OP1VWY$*4.*K+A]_B97T[H5J>)9W-@T)-I=YP9I M4PQ1?/<.(F PA-QIZP?VH-&4.N]4[E].^>HE>9'L>FQWMDBSN;Z\?UH1SBB< M./;'%*.37M6V5U1&_7=4+MJSIX_!KM=TQR%X*M')%QG#:0&5X!\(:8GWR%?Q MT%?E3S:+7[C:LHM4ENJ3J=V%$5-]W1XI0>9?38; !LL8B$]J)?YC[(^8/1[H M00U\2-0^&/R)Y#4>CLX'NT 2$ )!I0-.C4?_Y=GN; M9]1_G>>J0FI4XD;>/=E0?^%J3KN;<@D0]O'17NL8]=_KN)26BBQ'MW($:^W) M_/S"18^TZS.ZO_&<-[_P4(-IX"JQYE:!/U3E##NCIO @@8=X+3,>T% CC2%D M1=Z64O2*?XU!D!(15LX3IG$+/NX#1.#JC#QUGP-K1N'V)[/X.+GSIGN*OK5D MKHNF>ZDC+E@U?%&'[AG%:Q[44*'1U&,(?7^M4D7+.2J@@A94R(+N]49FXV8J M";A@ 2^Y]4>$3E4F"2%BLK8A!P$X$DNUWH_;OX0&.+IT?K6QJQY#\GNL=*EI M.QJ]\A(>C0?#\>G@Z'2$Y#,X.SD9G(U?P/!Z!?%2?.-#?P(X8?E9]S:&(\_W M[=UR69BU4N&5"5?>1Z#]Q=&I.#H:X^_)SXA_K)(#9U'VX&UTS/>^XHX/CH>G)S33J% ML?$F0(?D#[&Q=468Z-;?H//MAG2A;G02[B]OOSGF=76Z5"[73!QPU,H/\!5WJ;?O\V\;_Z:H?['\_!2>>HQ( ^9I@Z/#@#7+;^ M]VC^0VV6_!LPE+6U*?EQH5 -6!J [^F2=_Q &Z1?!;[]?U!+ P04 " #W M@:E89@"AQ"$# #0!@ &0 'AL+W=O$[F>VWN;8/HX*&5RBZBQKGN.DDL;[!E]D)WJ.A+K4W+'&W- M-K&=058%IU8F>9I.DY8)%2WGP79KEG/=.RD4WAJP?=LR\[A"J?>+*(N>#%_$ MMG'>D"SG'=OB&MW7[M;0+AE1*M&BLD(K,%@OHIOL>E7Z\^' -X%[>[0&G\E& MZWN_^5@MHM030HG<>01&KQV^02D]$-'X=<",QI#>\7C]A/X^Y$ZY;)C%-UI^ M%Y5K%M$L@@IKUDOW1>\_X"&?BSC4 MX6;LG:&O@KR<\O/ MVB'D\ K60U= U[ 66R5JP9ER<,.Y[I43:@NW6@HNT,*+.[:1:%_.$T<,/$[" M#]%60[3\']$*^*25:RR\4Q56?_LGQ'RDGS_17^5G 3\QYN49O&(L M1Q'PBC/EL##D=RJ]P;L\[>T'Z-IVC.,BH@FQ:'88+9\_RZ;IZS/0Y] MN::!K'J)OD7?PVW#"FYV:&AXX'/?;M"$[C6,8L./D 3I?,Y& M/)W/76,0_^HC4!=X,[;!/XH_#-F!(==M2V-H!WJD#]8Q5='%>OYLEF?9:YHM MP2'+XS2?QL4T@RR-+R>3^#*_HJOGD"XAD_(1*B%[/\E@D?=&.+J1U_!5[=#Z M:$_P-2F&=4;P8'24/U TP+:3^I'X#R;=>6FPD!'WJV(*19'3>_(_\A[IV +X MJQ<[)HGCJ]-KH% MSB3O)0L:MT'.>HO@&A0&L*Y)^V#//&,G7HU8%2'10-,IZ- (74%9E/%D5D(V M*>.2"G[JNB9'*M.BV08MM1#T81"&UL MC59;;]LV%/XK!UXQ)( 2Z^9;9AN(TZ8+T'9!DK8/PQYHZ=@B0I$N2<7Q?OT. M*5EU%E?(BTWQW+Z/YT).MTH_F@+1PG,II)GU"FLW%_V^R0HLF3E7&Y0D62E= M,DN?>MTW&XTL]T:EZ,=A..R7C,O>?.KW;O5\JBHKN,1;#:8J2Z9W"Q1J.^M% MO?W&'5\7UFWTY],-6^,]VJ^;6TU?_=9+SDN4ABL)&E>SWF5TL1@Z?:_PC>/6 M'*S!,5DJ]>@^;O)9+W2 4&!FG0=&?T]XA4(X1P3C1^.SUX9TAH?KO?=KSYVX M+)G!*R6^\]P6L]ZX!SFN6"7LG=K^B0V?@?.7*6'\+VP;W; '666L*AMC0E!R M6?^SY^87,+3]5;$S@N75+NK28I)SL[ M_Z(L0@)G<)G]J+CA_JA.'MA2H#F=]BV%<(K]K'&WJ-W%OW"7P&3_8@XW M.4K+5YR6E\:@-76N-'TSF<,GSI9<4.*(%\FKDO;_]@3A 9\M+(3*'O\YQK43 MS7&N'Y7*MUP(> =1%(PFPQ:=#\BE97+-W9+54*,D",(:4O MIF"#!#K*=M"6[:"S;*^YY!;//M%TK?-Y0[V_.MR\^5D6KRK8P"W3UI7\HC+D MV1BX4N622^9'T=LJN1/@\4J^9ES#-R8JA.]^=+OV>D)--Q%\,);3P*>=KP97 ME: >6U'FN80=,FU.H:$L/+M714_%ZPC\#Q,P3>&3GT03-()1(/SD"AE MA51"K7>0I"%$(>VU=DN6/9(($JH(TG?J/HVKSL P"8;C,4S.)X0K M17=E\^$"M _%^7]02P,$% @ ]X&I6"32Q7(B P *P@ !D !X;"]W M;W)K&ULK59M;],P$/[>7W$*"($TEB;MQAAMI7: MF,30M!?X@/C@.M?&S+&#[:S;O^?LN%F!KD*"#ZW?[AX_C^_LRVBES8TM$1W< M55+9<5(Z5Q^GJ>4E5LSNZQH5K2RTJ9BCH5FFMC;(BN!4R33O]P_3B@F53$9A M[MQ,1KIQ4B@\-V";JF+F?H92K\9)EJPG+L2R='XBG8QJML1+=-?UN:%1VJ$4 MHD)EA59@<#%.IMGQ[,#;!X// E=VHP]>R5SK&S\X+<9)WQ-"B=QY!$;-+9Z@ ME!Z(:/R(F$FWI7?<[*_1WP?MI&7.+)YH^444KAPG1PD4N&"-=!=Z]0&CGD"0 M:VG#/ZRB;3\!WEBGJ^A,#"JAVI;=Q7/X&X<\.N2!=[M18/F6.389&;T"XZT) MS7>"U.!-Y(3R0;ETAE8%^;G))^T0AO 2WC-AX#.3#<(9,ML8I*-W%IY?L;E$ M^V*4.MK..Z4\0L]:Z/P1Z &<:>5*"^]4@<6O_BG1[+CF:ZZS?"?@&3/[,,CV M(._GPQUX@T[[(. -=FBWT.K;)J_U'F[W]K?EV-:,XSBAZV#1W&(R>?8D.^R_ MV<%MV'$;[D*?/(1C#SX*-A=2.$%L8VP*H(R^0-X8(]029LP*"U^#%+C".P8>21.XMD2CM['X$6]10A;;/+:#WM2"7@!%DI== M*'LGE"?D[X&XIOM>H&'ASLJH_!Z>/3G*L^P-3#EOI%X*#D_A>;;7/WP-+ZC[ M,O[64[U3Y9#X.R D!+MB-:WFK[)H%WN]_Z[L+7*LYFC6X@;_(N[UX ]Q?NH1 M<4<':W&QMR,-#[HT//C?:;@'UTK/?>:$;#Q5=>.\C5:I.ZEMS]2K MTB#^\N[\GFLS)IGBZ",^QZ50RA.GP-5HA"[HW,(A]TXK@G9^@0H?/>T*O$A4 M_!Z<8H5F&,F4I7R@YV[>\ MF^TJX;0M _F;1DEN:3*@L0%N?;W7]$IFK8TM0.GZU .YMI1<0G=DJHY&F] MZPM-SV(<^ VZ[X/)3U!+ P04 " #W@:E8,TTC:N4$ #L#@ &0 'AL M+W=O@#(]$V&XGTDE2<].L[I&0Y2;VJ-\B#)%*:RYDS,Z0XV0AY MIU:4:O105UQ-W976ZY/Q6!4K6A-U+-:4PY>%D#71,)7+L5I+2DJK5%?CT/?3 M<4T8=V<3^^Y*SB:BT17C]$HBU=0UD8^GM!*;J1NXVQ>?V7*ES8OQ;+(F2WI- M]6_K*PFS<6^E9#7EB@F.)%U,W7EPC)&)I);(>[,Y+*GM&J,H8 QI?.IMN[-(I/QUOK%S9VB.66*'HFJC]8J5=3%[NH MI O25/JSV/Q$NW@28Z\0E;)WM.ED?1<5C=*B[I0!0C.RXZ#Z>MA_ K'B+T47"]4NB< ME[1\KC\&M#WD< OY-!PT^)'(8Q0%'@K],!ZP%_441-9>-$"!0FU\^\)KM>/] MVJ9I3M2:%'3J0E0+NBCG#T/0H#+PNQ M,R^^-$PQVUP ;UXM"'2)F04@D*?.90U6M?D&BP>T!X>"EI+RXA%I2;BJ6FE2 M_@UU#HUNRBR,4W3D[+Q#LHM5GVUP'D5>F&$TP&W2E(>8@\?PP-<%[<91"(]TS^&X8(Q7( M%"LN*K%D4!N!AX.LNU])45"E7@BD8"*QCRQ!-\)86&ZKJ6>WS_%^L$X/UGD) M%@Q'209 C?8 4*@/N&)G/\C 2],4!:'G9['3@F2[#)$V0P 20Z"Y(2CU$BBX MY\7B?) "+)\1*1\97Z)Y+1JNT;PHFKJ!VJ.E>24U^Z>MPT^P!;X0=BX89YJ. M*M@YRO]".''.[ H-K$C:5K-:L;6%%GJ P4#S/1_;0>@%H>_T@3X"24$.J? 2 M/X9[F@?.%: R;9#DOKU&T G%'0B#+$X"E&0Q,AG*G&NQT!LB*0HSWUXCYT:2 MDB).:HJ"V+?7J"-O,1@&BGPOC#$* % *BAD@QLXE+-?#>B>M2]C,[VS.LBB MCFT' UF+ R_/;-9:?]L\.B_[(>HR.)2QUV?(M("?P2#W4FR>*=3LL_R$'K;Y MB6U+Q1D>R$^P)_%\L_->NO8,NOWU7:_GY^J86P??\57M:^C];6MPW$PR+%I1?RZ_P:HV"/GV>KP+H'N'2;>KG1#Q..> M>/Q&Q'OHHM$-+ _/L)X_P"E+T0.S,HAE?U9LQ.\D->>TDLHCLPY[$8[-5IZ8 M[O=P&IF)^N\9,3""RV2WO.4J@PFVA[&.G? M]D>Y>7N"V8FWYT#(TI)QA2JZ %7_.(-_+-F>K=J)%FM[GKD5&E9V.US!<91* M(P#?%P)^Z+N)<= ?<&?_ E!+ P04 " #W@:E8LM68;X(# ! !P &0 M 'AL+W=O)ESEGSLR0P\5.R#=5 M(6KX:.I6+>U*Z^W<=55>8%[B-HRW M]FK1KSW*U4)TNN8M/DI07=,PN;_"6NR6MF]_+CSQLM)FP5TMMJS$9]1_;A\E MS=R)I> -MHJ+%B1NEO:E/[^*C'UO\,IQIP[&8")9"_%F)O?%TO:,(*PQUX:! MT>\=K[&N#1')^&?DM">7!G@X_F2_ZV.G6-9,X;6HO_%"5TL[M:' #>MJ_21V MO^$83VSXS2)XZTIRK.6M,L)IU=_"(V0P#D\X3NV'<*=% U< MBU9+2IB";UQ7<-WK0*G@RPM;UZA^6;B:G!L*-Q\=70V.@A\X"N&!2"L%MVV! MQ?=XET1/RH-/Y5?!2<(')B\@]!T(O" ZP1=.F0A[OO!$)A0,\1T+;T!'Q]'F M[LS5EN6XM.ER*)3O:*]^_LE/O%]/:(LF;=$I]M4-5ZPL)9:L/\IB,Y7KKUXP MO."'AJM:Y&]_']-^DOVX]I=*(GY7,\LDVF0[M#Z]K_?C&44)>K_%N466T!$% MG$'@.U'H#8.9%UE?;Q_<^U9C*9D6$E(GS"+P/2?P8XN,,B7BJDVU@#54L;F38+DJ)2AS^(8#'=@/6/#<]$:+O+? MXQ,G2 .2XGNQ]+!'I&H%1A+P]S[G,.ZY[ M&G,S F<643@.5=RZK#>L&4HU:B>HRLT2>WY$XB<,(E.YX Z MYAOJ^?]B. ,_!J5@IYWLRD0( M 'X% 9 >&PO=V]R:W-H965TGLZE:6\$EWFDPZZIB^G6.0C4S+_)V$_=\55HW$633FJWP M >W/^D[3*.A9"EZA-%Q)T+B<>1?1^3QU_6W#+XZ-V:O!.5DH]>P&-\7,"YT@ M%)A;Q\#HM<%+%,(1D8R_6TZO7](!]^L=^W7KG;PLF,%+)9YX8=I8&D)UQCD6[IY1Q>_0Y? K9*V-/!-%EC\CP](6J\OWNF;QT<) M;YD^A23R(0[C] A?TOM-6K[DB%\#G;]#]CIT>ACM$G)N:I;CS*,(&-0;]+*/ M'Z)1^/6(MK37EAYCSQXH<<5:(*AE_SM>?;A<:TTU_&Y5PR.^6)@+E3__.63@ MZ!*'#= >YV6_R7"%.58+U+N99'#/&CIS%C5GPL )1&=^%*:N&/J3=#QXHN ! MEU!KE:,Q,/'3: *1/QPE@]X(Y(JBO))8@%6@;(G:0!2E,!D/KKGD=(8+6"E5 M&$C]T22%V$_'X>!162:(_.UTGCAA21)1$8=^.)[ H;T/]C)1H5ZUR3Z"[MW<"JNDW80EG*:UN6=$&B M=@WT?:GHU&T';H'^RLW^ 5!+ P04 " #W@:E8P7RR\_P" #[!@ &0 M 'AL+W=O]OVC 0_5=.63>U$B6_2( . M(I5NTR:U&VK9^F':!Y,RJ)24R?7NCYS797F6#+5%S56=&7:5;5$EEE06;B!Y\5NR7CE M)!.[-Y?)1&QTP2N<2U";LF3R<8:%V$X=WWG:N.;K7)L--YG4;(TWJ+_7(F5XJ("B:NI<^Z?S2*3;Q-^<-RJG1A,)4LA[LSB2S9U/",("TRU86#T M=X\76!2&B&3\;CF=[D@#W(V?V#_9VJF6)5-X(8I;GNE\ZHPL&6!ZF3B M:F(W.6[:,LT:IN 5IA"N1*5S!1^K#+.7>)=4==*")VFSX"#A%9-]"/T>!%XP M., 7=J6&EB\\4*J"IKY]Y37HP7ZT>3G.5,U2G#KT]"N4]^@D[][XL??^@+9! MIVUPB#VQW>_!A5 :?EJ)L, '#;-"I'>_]JD]R+=?[2*7B"]< NIQFG=--I<0 MOM4HF>;5&@JC"E(CZ@@&D6^NG@!=:>93=UN-]G/FX'VG-Y\%N@)7?-*D= 50;W^D!HFFU';++2H[7A; M"DW#TH8Y?9U0F@2ZOQ+TWK<+0@# M ,!P &0 'AL+W=O'"3:VO-B8OMT/'O.3M=*%)7[26Y<^[[ M[C[[?!EMM+FW*T0'#Y6J[3A:.;<^8\P6*ZR$/=9KK.G+0IM*.'+-DMFU05$& M4*483Y(35@E91Y-16+LQDY%NG)(UWABP354)\V>*2F_&41H]+GR1RY7S"VPR M6HLEWJ+[NKXQY+&.I905UE;J&@PNQM%Y>C;M^_@0\$WBQN[8X)7,M;[WSL=R M'"6^(%18.,\@Z/4;+U I3T1E_-IR1EU*#]RU']G?!^VD92XL7FCU799N-8Z& M$92X$(UR7_3F V[UA (+K6QXPJ:-/:&,16.=KK9@\BM9MV_QL-V''< P>0+ MMP >ZFX3A2HOA1.3D=$;,#Z:V+P1I 8T%2=K?RBWSM!723@W^:P=0IK &[C$ MN8-7=V*NT+X>,4?D/H056Z)I2\2?(,I@IFNWLO"N+K'\'\^HJ*XR_EC9E!\D MG ES#%D: T]X?H OZY1F@2\[H-1"JV^?O!:=[T?[NW%FUZ+ <43-;]'\QFCR M\D5ZDKP]4%O>U98?8I_FHO[NDNDMZ7NFF=KN5]=Z+0BKI_L"UD4M9 M"P6>X*.U#0(U(L*[A[4T(MR\O?Y_QTO-5W1>UINY8[@2C4$5P^=/D#%^2E.& MNC1G64(6[S]:60I'T$_"HS<3M5U(5&4,LW-J:L8'+2SE+$M92+1C$HQ 1Q3H M\?YYX"3[W4GVGW>2M'LSX1HCG<2PEU>Z7KZY0U.U-^UY!WDPV?Z##-I>&?03 MN43SFK1E<3+H]]I]BTFH-T]H=9ASKS^-DW30VX/+X]/AH,7Q.!GV6UP:\]/, MFP,8)N'S$'@^)*;3..?[=Y'M3*@*S3+,80N%[ZMV6'6KW:@_;R?&"H,GQ@/;(M+.W=9Q>AWDWUXZF9S!7]+M"XP/H^T+3)-@Z/D'W YS\ M!5!+ P04 " #W@:E8\T! LU0$ #D"@ &0 'AL+W=O)Y* M=U@P-105EG2R$;)@FI9RZZE*(LLL4Y%[H>\G7L%XZ2QF=F\M%S-1ZYR7N):@ MZJ)@\F6%N3C,G< Y;MSR[4Z;#6\QJ]@6[U!_KM:25EXG)>,%EHJ+$B1NYLXR MN%B-#;TE>.!X4&_F8#QY%.+)+'[)YHYO#,(<4VTD,!KV>(EY;@21&7^V,IU. MI6%\.S]*_V!])U\>F<)+D7_AF=[-G8D#&6Y8G>M;PQ"V#*&UNU%DK;QBFBUF4AQ &FJ29B;65)C!I2@(=<5LX-8Y*V%PSQYS5&MG Q2=LI)@8Q77+.=_8>;" MLA U4?]N'8-[?-:PR@GB/T[YV&O%:1_O=Q+Q*VR!D$EW'33F%U$J*0UB0P6\ MQ[)&^)[.Z1=,X8Y*D9=;P,8%DX6!3Y*VI!VE.3$^55)D=:JITO9T@U0V D>. MV#!\Q!(ERRTQRZA$N-*2F5KOZ"(_@C@:&=WQE/[Q.(8><$8=.*-^<.B&S&H* M+KEW$J@#DP2$+2SXK3+%I%QX8'G=%-92T578;+\3IEY[3L/TBL0M5T_G&P,: M+S42@0:*$T5G.)W #V:(:;CB>YXAQ?*%8YZ!/_1]VFT'DVVI)A=3413D@;*N MT6W^1,]')7F*L!9=S_0(;NG*%A.%H;+\O]H8TJ;HGP+8-/%9:SC!\RO5I/(W-3%X\HN^11 MKP%:M@&Z?D:94"3ML/( MC?V ]DE,.#YMQ3>5/X PG%@E21RZ?FP*==A?=.,.P'$O@#>BW%/JDF&W-%!< MS+0IL3:,_Q*Y7G7_%3D;:[@RY?6!<6F+'N'ST735L/4"&4RF[G@2&_B"X2AX MA2^:N)-H8N&;P$,C=1H-S:_DK1]4!/3].$=+M="[=L.I=7\J;_(]UT\RO(<4.L ME"YTV!J5@5(G/M8P0 %D, 9 >&PO=V]R:W-H965T O2ZD:9O!5K29ZK8"5K5)33P+?3R8-X\*=3]MO-VH^E1M3R'R7RZ9BNX _-Q?:/P;3)8*7D#0G,IB(+ES#VC MI^>YE6\%?N>PU<_.Q$:RD/+!OER5,]>W@*"&PE@+#!^/< %U;0TAC,^]37=P M:16?G_?6W[>Q8RP+IN%"UG_PTE0S-W-)"4NVJ6,5N2*ZE,)4FEZ*$\J7^!#$.0(,]T/-@U. U4RMO7 D<$VZ^ Z%UVE'A[5MJYSJ-2M@YF(O:%"/X,Y__($F_D\CV*(! M6S1F?7Z'K5=N:B!R.:3E%M92&2Y6SQ/DD<73(/&I#8;BFO4 M\^&X[BL%\"*?!+-15#8=CDV'S4GHW,(CB V<.I>VY904O$ PVI WA%*/TL0> M?"],J7,I'CD*6-BL1J&B$K*6*XX92;PLR$CF^5'@W"A9@-8O!=!6EOF$AE[L M)\Z]M!94YQH=!#GJ1WA ;#G-G2M1R ;(4LF&E/R1VV&""CC45,N@/@C7RVAH MC7EQFHV!I3'*^C1\!:F7)Q2-).D>)_\W-"3TTBQ'$H(D=2ZDPIPS;%#8X1#6 M:/(H\%(_(,?V$/@Q.7;.BL\;KC E'.&)%;_GOH-;!'>$(#3WPBA%':S4W/E'R8Z1 ME@RD):.D?9!B]?8#KKN2G&D-YGMH&O5TF*9A.I!W4$"SP))Z.2JP7;#DS1-A MHB2 !;RVW34PAWV'1=X_!]ZPXA-LC2Q#SB(O36E;9C3WQQA+!\;24<9:FLBG MZQ;M01Y&];]Q(60#NNR[EE7V'V#+!VSY_[:L1CU_8^U=E>B?+WGKG[7=<6@' MI#$67V9+S%9A/+H%$B]!Z_A(TU>65ISB2L$9BML-]]J7P9Y[,>ZR(/-2ZF-9 MTQ@_!.W,"",['@Z6]N39=0]GX*J]U&I2R(TPW[2C6RM M.*Z=&I:HZI^D.!15=Y'M7HQ5TN\!0 C"$ !D !X;"]W;W)K&ULK9I=X0TL@7_=W5%QUBTI M891 RB*2(@KKZ\[4O/)-1QJH&M\B>&('QT@.947(@SRY":\[ANP1Q!!PB<#B MYQ'F$,>2)/KQO8!VRC:EX>'QGNZIP8O!K#"#.8G_C$*^O>X,.RB$- M?H=B0*J# 8F9^H^>BKI&!P49XR0IC$4/DBC-?_&/XD8<&%BC,P9686"]UJ!7 M&/2.#89G#.S"P#XR,.TS!DYAX!P;.&<,^H5!_[A+UAF#06$P4,[*[ZYRC8LY MGHPI>4)4UA8T>:#\JZR%1Z)42G')J;@:"3L^^40X(!-]0)\PSR@@LD:?=T"Q MU E#[US@.(H9^@(_>(;C]^CMFV&O;W]$48J^;$G&+GDA>-RA:]?)6 MK3.M]M M2?F6H44:0EBU[XH1E,.P]L.868W 6TPOD6E=(,NP;/1UZ:)WO[U' M;(LIU'5OWH:V^'J/WA7C;F"Z/V,^(]-4R-[/.[AX10>-84ZKN_VO,._EG;%K MS/U?OCT-KNR5BNPINGU.D5FR GH@Q'2#EK 1X8_7W:E9(TU&\BNVPP%<=T2H M9D ?H3-Y^\;L&Q_K=*$3YNJ$+7*8HV!R?GF<6./NXZ'/3VOTJC5\31VJN-4N MW6HWNG7*/_ M?!#:>1 3[ UC&4X#0$L< T/3#060'D9_W8)T_]]UGFYLH*VG M=<)%"Z@1"Y&95AX0YH1,(+M%1A] )] M$BL?54/,7&*"RJ/K>_3?^3@[:VRTK:9TPESGY'$>6>9@-*@^TPN=;7HZ8;XF M6$4M_5(M_>9HLQ$198/%VN;S>@VY6&@4J/6-4E*=%AJ1;;6@$^;FL/YA\#?$ MWY$4=#;IZ83YFF 5*0Q**0Q^.7!\PW$&AW&C3A:-^+:RT ES!R>R,$>6;1_) M0F>3GDZ8KPE6D<6PE,6P419SDB014SMJ#X0&A"0"L0 1VV\9(WQ*&!,A@P0 MM1N<62.]K2ITPMP<-CQ0A7%I'"T%%SI;]'3"?$VPBBA&I2A&S=-&O,:)VOLV M+D0;(6U]KQ/FZH0M=,(\G3!?$ZRB$=-X29D8C2J994R4B/@@8L@J2I5>+L1) MRJ*P2)V@+Q2G3*P\Z'%Z(U=0T4)E1K=Z3N]D4I\7-4?-<[_;W.6VGM=*\[32 M?%VTJO,/\F5FH_/O\+-*12!.T#3XGD44T%X0<@^B9HY:EYLULW5_8->XW#QQ MN3FL<7EC1UN[7"?-TTKS==&J+K=>7&Z][GE7_F91_KPOQ#%_1C5T]MWF$K;6BD^9II?FZ:%6M MO"0OS>;L99II?FZ:%4A MO:1+S>9\:;V0Q([D,9*;%AP+R>1O(M6%FU2$)5$X#0*2I2II?I,&)-G%P$4@ MFH;_9(S+B:OM0L4^"3#.J&Z98I_,68Y]$H6TYDFUTCRM-%\7K2J>EURIV9PL MK1?//01DDT;_BNAR$PHI1.M(1AL7^;-8V@=F'32%EIIGE::7] .'[5AW^R7=S?73/?@ MG7 "=*->]S.DHD/^7K4L+3\IF*H7Z4?E,_-JGG\8\(+)OU.XQ703I0S%L!9( MXW(@.D;S5__Y"2<[]>9Y13@GB3K< A:A1U80U]>$\/V);*#\ &/R/U!+ P04 M " #W@:E8TV)JHY@# "X# &0 'AL+W=O5W._@03[VV#0A3C(Q%8/2WQP6FJ06B,'Z4F%ZUI'4\ M?GY ?^^X$YF^W4&WD08\+RU-S)PU]8\NE;O$BFVOW"H;1M>Q#E MVLBL=*8(,BZ*?W9?ZG#D0#CU#D'I$#QVZ#WCT"T=NB]UZ)4./:=,0<7I$#+# M9A,E#Z"L-:'9!R>F\R;Z7-AM7QE%;SGYF=DG:1 "> NK8M]!)K#B&\$3'C%A M8!Y%,A>&BPTL9AV@83S5\QGN3L_0-N7]9A?#ZU1MX!5S YZW,-1.Q MGOB&8K0K^5$9STT13_!,/%VXE<)L-;P3,<:G_CYQJP@&#P1O@D; 6Z:NH-MI M0= .>C7Q+%[NWJUQ#U_N'C2PZ5;;U75XO6?P/H@]"B-IG[XI;O!M+ ^B3N0" M9>!0;.;O9YWA8.+OCXG7V'3[IS9A8S2V)%WK'8MPZE'-T:CVZ,U^_ZTS:/_1 MP+57<>TU<@TQ0:4PAC^5/8E+)2/$^C-5 /6/J 3CT2.ZC8N]G$JARX7 3G3I M5[KT&W59<./2]$[2': -*J!4@Y5AE,DT_8EJ[=]4:^&?6\S6J/ZM$ZQQA3/% M6%P2++P0V(FR@TK90;.RTE4ZRC#XR-F:IZ1T"^YPQWYF=M+61B>S%?RCC%A: MGLWW.14[,HR0+K&X3O#&A<\5_))@X>!)&>CWVU7NG.@XK'0<_D)'JE*D2XN$ M,;E"F&?V$BD%8NL4ZR0:/DGBCBVY)TGG<$W%)L/!"8"<*CBL%QXT*EOV&/CHK+9BGU)TR$2%0GPL+ MNA,X9:C4NE5<@S))ZA0>/]G?WN-+H3&8NZWPT?].Y7A1=]/\P14]/S)Y*ZQW)@%Z@^5F;_ 5!+ P04 " #W@:E87WV'4"8# M !" &0 'AL+W=OA:;5R KO M5,LPGLWRL&:B"58+;[O7JX7JK!0-WFLP75TS_72'4AV6010<#5_%KK+.$*X6 M+=OA!NVW]E[3+AQ9"E%C8X1J0&.Y#&ZCC^O&:OJP9DBJ$73O]GCD(<3!^*9=H@' MA_C<(7W&(1D<$B^TC\S+^LPL6RVT.H!V:&)S"Y\;[TUJ1..JN+&:O@KRLZN_ ME46(X0-L^C*"*F$C=HTH!6>-A5O.5==8T>S@7DG!!1H"?_?9P0)N]ZBIV+!6 M=4U%V51,$^#M9[1,2/..H,:;%J&E8-V1(1\"N^L#BY\)+($OJK&5@=^; HN? M_4,2.2J-CTKOXA<)OS!]!4GT'N)9G$[$L_[_[LD+X21CXA//ES[#-Z:0#2GD M?0K[? %=.&-94U#B?WLSCZ/H$_VL@L-;<82\F\II?V;FSW07>+^**-X\R:-% MN#\5.P&<76?9=7PS G^2E8ZRTA=E?6OV:)RLHXZ2[KJQ6G!OM(H_ ,D"K%NI MGA 'DVK=I3:OR4LOHTZBFR0_$W<)2Y+X)LFFI66CM.Q7*N94G5H ?W1BSR0V M=JJ_86.>L,@JU0:,"R MI%X.!^9R9\6'D:L@)NHWA((6M5"O)BF_T)XF:39/SU)T"8NR-+WXX\.3;EJC MWODA8\#WP;[=C-9QCMWZ]GUFOZ/YUH^C_VCZX4C-9"?H=Y=8$N7LZIJ"TOW MZ3=6M;YG;Y6E">"7%=K5:[0<#!K*3Q-1V:"OMC]]C)Z0D MA$Q3N1]*''Q>'_OA^'+2#B:7O'H-1,599>0$+NT1 QLAK41N:%:[:E M@:KQAT=>^,$SDEV94_I3%JZ6@YHA/2(^60@I@>%C1R;$]Z42^/&W56=A\[,,2<3ZO_I+<5F4.O6T)*L<.2+>_KR&TDZI!Q<4)^K_^@EJ6O4 MT"+B@@:),7@0>&'\B5^3@3@PL.T3!E9B8.4,K-X) SLQL/,&U@F#5F+0^JA! M.S%HYPV<$P9.8N"HL8\'2XWT% L\[#/Z@IBL#6KR0>%2UC# 7BA_60^"P;<> MV(GA+14$V>@[&BV>(X]["G=]2@3V?(X>R:N(L'^&OGWIVD[K$GDA>MS0B.-P MR1OH:Z;<;PIP2,HV%TGCT[AQZT3C)KJAH=AP- N79%E@/RNWMTOLFS 0Z6A8 M^]$86Z6"-YB=(]-J(,NP6NCI88KJ7\_02GS[8G:ZEXAO,"-%_9Q4D9T]W:-Z M,J!GIS6G']"TS:RK14.H1\;]? _WPU?"QTY_K;9JIG6BF9&_PC";R-_HWSD$$-)F-.V([4AN"B8UP6H=4I-M4I-M,IYFH2RV!M MI5A;I5COR8Z$46$4C$LMJ[+4*3:-Q1PE)A?PW="T.[U^+KB:Q#*-V MRJA=RN@6=CE7X8(&!-6O*>=G#5GTHZ47KM$=92HH1T(P;QX)//<)$A3=4K ( M!:.^+ZM=A8* 9Z*(9>J WH !'A"5A,>]'AD.^ M(HP5[L7&G:,XL"R[;6<#81+7ZAW6,N O6VM:ZFQ52#K%7$UB&4C=%%*W%-(= M?H-#F^!RZE3[<4;0'AR!_?8/!A-O$9KN\5+4XRFU,6J:'2* MN9K$,FAZ*9K>Q^+GX)S40#-X%F_INH:N.(_($E&FGN0JV$"WD9Q$$5VA![75 M1W4X-,6[_C/TW^G]_SAVJ)W!U6G95H[JQZI-2[M7%:M.,5>36 :K:;R??PV= M$^,1<[Z'#D?@E'H1SL2/S/QI=)TI'Y>C5J3;[4 ]<76UF2;WG=\SR!,^UW.E //V^5?$#479- M,(<7CX0%<@V=R.,D7@A4_XM@5I2I&O^B"0>]@65A%J_K6KN9\8H MB_0]MV.6)W=&C&!)[I[ ]#GC N),3K, &%;1^L-S!/L?Y%(JY&ZH.%>8<&T= M3Y5FU^SD8U!KDD>KVDRKFOO+ \_TF.6IGE$81L!*11[:GTD*B1RG1JQN M_M11WEAE'CK59EK5W$0M<_9UC!R-YL%=34#86MVJ<:1V%?%%1?HVO;D;J?NJ MW/NQ>3&)[]_>9>+KP!O,UE[(D4]6(&F<=\ O%M^PQ05!M^I&:$Z%H(%ZW! , M6Q99 ;Y?033N"[*!])YS^#]02P,$% @ ]X&I6&&ULK9EK;Z,X%(;_BL6,1AUI6C 0 MDG222&W#[HZTW:UZV?VPV@\..4G0 &9L)VG__9I+2;C$$U;^TF#@O,=^<(_] MPF1/V7>^ 1#H-8X2/C4V0J37ILF##<2$7]$4$GEE15E,A&RRM002!R"2(_-G!'411IB3[\:,4-:J<6>#Q\;OZ+_G@Y6 6A,,=C?X. MEV(S-48&6L**;"/Q2/>_03F@0:87T(CG?]&^O-;3D%2;91'D23%X-99R8_4$%( ==HIO@QS;D8?[TRA:#)2*<@^"()$OT M>T@6823O (YNN)Q9\O+%' 0)(_X9??HPF$)V M.4ML!F7W;HONV2>Z=T_8%7+P%V1;MHM>GN;HXN/G#IF[,V2P_5.9>1\9_^41 M793#[A+SU6)S"*JA.=U],N7#K)ZH73U1.]=U3^C^2NER'T91%^PBTLLCLQ*R MFSF./1Q-S-TQ2Z5^5KFN>4H"F!JR-'%@.S!FGSY@S_K:152GF-_NOXV']J'_ M-6!.!Q=MI5Y?VH78X)BV8XV&#=HZ4_J:Q&JTO8JVIZ1]1_BFBZDRJB]3K\5T MA'&#J,Z$OB:Q&M%A172H)/K,R%+.UB"@VT1N1A@$$.ZRR=R%62G5%_.PA=FU M++?!66=&7Y-8C?.HXCQ2UXED)PL%97*'UT56&=R7[*A=%+#M.@VT.E/ZFL1J M:,<5VK$2[9]B TQNZ!F3A!6%5ZG2E_&XQ=C&WKB!6&=&7Y-8#3&V#E[&4D)^ M8-) ,_&6VQ60#B:5EE9TN@ZE4%_.I5IM,@_&S05.:TY?EUH=]9%MQ&?,Y]/S M6!W>&S!N _8&5A.PSIR^+K4ZX(.+PVH;=_.^VJ7D[=12IY;H#=EN+W:>VUSL MM.;T=:G5(1^<'_Z)]0L"M@59*UY32'CWJJ>6Z W9:4-V6CLWK3E]76IUR =3 MA]6NKK[T18>W2)VTM?J\4JVV C9?=\RUIO1UJ=5A'YP>5EN].:R 92_N!'FM M6+]UDM;J\7#;Y-G.N#6OM9H\76IUU >;A]4^;PX+@2ZJ+9W<7U$JWAO9]YSJ"^'L/U!+ P04 " #W@:E8L]FK'[@# M !5$0 &0 'AL+W=OBH4O MEP)(8HURYH=!T/=S0@MO.K;W;L5TS%>*T0)N!9*K/"?BZ1(87T\\[#W?N*.+ M3)D;_G2\) NX!_6PO!5ZY-%M=RZ1H;* MG//O9G"=3+S 1 0,8F4@B/Y[A!DP9I!T'#\J4*_V:0RWKY_1/UORFLR<2)AQ M]@]-5#;QAAY*("4KIN[X^@M4A'H&+^9,VE^TKN8&'HI74O&\,M81Y+0H_\G/ M*A%;!F%_CT%8&80O#+3C9H.H,H@LT3(R2^N**#(="[Y&PLS6:.;"YL9::S:T M,&6\5T(_I=I.3;]R!2A"'701_UA126UN.^BZ4*18T#D#="$E*(E.KD 1RN2I MF/DY'_>%P[#]N MDWACTDZHW3K4KC/4!PGIBB%&4T G_P(1ITWAN3%&Z$D;2H0#E)=U#;LH(4^- MG>&$,DO:N5R2&":>7K,DB$?PIA__P/W@DZ,NO9ILSQGHM6ZW].#:.#'?'W%) MO_>JAE$T&C77L%_3ZCMI?>.*L/=QZ;]RCZ-@.'C1:$YW1]9H4),9N,D(D@#Z M2G*0]=+3Q,2)2VM+2N 6 M=HLW0'"OW"\:=8/3]%A^X89?Z%Y\(,X*SOCBJ7.IE6/2H))<#>Q&/[2#VT+; MS<5&P^"V10Q^+5"B;O"R@YU>CV6UD3NX#;WS!H@6.OL[^'<('+Q1.-@M<9Z7 MW8Y==@_OX%;%3EMHN[G8R"+LUD5'=/!K?=2PK;K='DMK(Y"P6R&]LX7=(-AV M<&/16A5#_M;!5;?EPI[G)8KYJE#E&;:^6W\SN+ G97\SO?S@H$]I"UI(Q"#5 MIL'90'>7*,_PY4#QI3T&S[G2[X"]S$"K26$FZ.!J5ACG2Q9B0( #8& 9 >&PO=V]R:W-H965T5 IH[4V-B,UE)^60G-_G4"RP0<,B,C4#QLX4Y<&X#(<9S&]/KMK3"_O@M^C>7 M.^:RHAKFDO]BN2FFWJ5':Z:9.]LSLE3250BY$4VE6//Q @QE7)]8 M=[ZFK?GW+90K4'_0^OBP(,=')^2(^$075($F3)!'P8P^12..?Q2RUE3D.O$- MXEL(/VM19PUJ^ EJ1&ZE,(4F7T4.^7N]CVEWN8=ON<_"@P%OJ1J1Z/R4A$$8 M#_#,_U\>'<")NJN(7+SXDWCWL 51P]#!-,(+)[3OZPDP!5@HG-X)W%'S:-+X,]L(\^41A.AKG&'=?X(->"\=I MWK&1"E13<^08ZRR7G%/5LYX,P3=;3'I@P2B(]^B'G,(O>_1^[PF6H#:N,VF2 MR5J8IB([:]?\KMV;W[//L"DV/>Q?F*:C8KUMF-"$PQI#!J,)@JFF2S43(ROW MT%?28-MPPP(;.RCK@.MKB8^]G=@-NK^*]"]02P,$% @ ]X&I6/(DC'YL M @ B@4 !D !X;"]W;W)K&ULK53O;YLP$/U7 M3JR:.BDK!-)VZ@C2FJA:I7:K^FL?IGUPX!*L&IO9)FFE_?$[&\*HEE;[L"_@ ML]][=_?@G&Z4?C EHH7'2D@S#4IKZY,P-'F)%3,'JD9))TNE*V8IU*O0U!I9 MX4F5".,H.@HKQF60I7[O2F>I:JS@$J\TF*:JF'XZ1:$VTV <;#>N^:JT;B/, MTIJM\ ;M77VE*0I[E8)7* U7$C0NI\&G\X,8,UN$X62CVXX+R8 M!I$K" 7FUBDP>JUQAD(X(2KC9Z<9]"D=<;C>JI_YWJF7!3,X4^(;+VPY#3X$ M4."2-<)>J\UG[/HY='JY$L8_8=-AHP#RQEA5=62JH.*R?;/'SH&,UG7+BV>R+L@@3 M> ]GC&NX9Z)!N$1F&HWTK:R!_3E:QH6!6WRT#1/O"'MW,X?]O7>P!US";:D: MPV1ATM!204XVS+ODIVWR^(7DETP?0#(>01S%DQWTV>OT.>8]/7E.#\F&WHNX M]R+V>I,7]/Y8,()KS!NMN5S!]TNL%JA_P"\8 LYEW5@S@@M<+;C@EJ/I0;NL>K4V-\PGIF8Y3@.:5H-ZC4'V]LWX*/JXR[C_)/;, MQJ2W,7G5QM/&T(XQ,%/5@DOFQG5$@;1DIW.$EH87J+N3K4%/HZUGN^QI&ULK5AM;YLP$/XK M%INF5NH*AKPT71*I356MTCI5[5X^3/O@D$MBS6!FFV23]N-G$PIA(6[(^))@ MN'O\W#V'?7BXYN*'7 (H]"MBL1PY2Z622]>5X1(B(L]Y K%^,NUW,C0F-G/,SN/8CQD*>*T1@>!))I%!'Q^QH87X\<[#S?>*2+ MI3(WW/$P(0MX O4Y>1!ZY!8H,QI!+"F/D8#YR+G"EQ,_<\@LOE!8RZUK9$*9 M!S,E$B:< M?:4SM1PY%PZ:P9RD3#WR]7O( ^H:O) SF?VB=6[K.2A,I>)1[JP91#3>_)-? M>2*V''!GCX.?._B'.@2Y0Y %NF&6A75#%!D/!5\C8:PUFKG(CD!A2A3)YJA,]/-^CD]2EZC6B,/BUY*DD\DT-7Z0 , M#3?,R5YOR/I[R-X3<8X"?(9\S^_4N$_L[C<0%NY!U=W5:2MRYQ>Y\S.\SAZ\ MNUB! *G0(]%)?%J3!'V[AV@*XGM=;%8P\[I>RH2$,'+T^RA!K, 9OWF%>]Z[ MNDA; JO$'11Q!X?%+4S<4L==%^X&HY=AF,5D-?;[>.BNMJ.HL;GH%C85*]TBZ\8:A5Q_"LU "V.^ M9EC>8_^N34%W)_EOL=<;_*M1K=D@V*-3N2EC^ZZ\JY-^Y0_I9&ICL<[56,Z6 MT*J9*;L";&\+CI3SY3[!:E(E6W8*V-XJ-)31M\O8:HO0%EHU,V63@.U=PI$R M[K8$.S+:3*J?G&7/X-M[AH8R!O9/4NM*1]GE$HBF M;@ST\SGGZGE@SGN*\[WQ7U!+ P04 " #W@:E8#TC\)6\" !\!0 &0 M 'AL+W=OK#QI[$6_;B[JX3^'MFU\9-JX"JOMA[F7/FS.R>S;;:/-@* MT<&C%,I.H\JY^C2.;5&A9/98UZAH9Z6-9(ZF9AW;VB K TB*.$V222P95U&> MA;5KDV>Z<8(KO#9@&RF9>9JAT-MI-(A>%F[XNG)^(H+-<*#*ZFT=G@=#;V\2'@GN/6[HS!5[+4^L%/+LMIE'A!*+!PGH'1;X-S M%,(3D8Q?'6?4I_3 W?$+^T6HG6I9,HMS+;[QTE73Z&,$):Y8(]R-WG[&KIX@ ML-#"AB]LN]@D@J*Q3LL.3 HD5^V?/79]V &DZ2N M .D07>;**@\9X[EF=%; M,#Z:V/P@E!K0)(XK?RBWSM N)YS+OVB',(+W<,&X@7LF&H0%,ML8I-8[2SOS MBJDU6N *7(6[@7H%5[A! 4.8:^4XA2GGAY:7:%AH^Q5G2RZXX\1P>(Z.<6&/ M/.N_ +XO4"[1_( #G_UKI1O+5&FSV%'IOH"XZ,JT2N\,R:8 M*G!?A2UP$H#>:YM\D)P,LWBS)]VH3S=Z,]VEK,D7_B#)WW2#%=TY8U 53^ , M4U:T9\+*GW05PX78IZS-,=Y1EH[VZQKWNL;_VX;QGC9,3OY*%^\X0J)9!]]; M*'2C7&N.?K5_6LY:1_T.;]\E.NDU5Q8$K@B:''\@ :;U>CMQN@[^6FI';@W# MBIY'-#Z ]E>:/-9-?(+^PIKV ;>XY]US[^A!7 M4MWK',"0QX(+/?-R8\ISW]=I#@759[($@5_64A74X%1M?%TJH)D#%=P/@R#R M"\J$E\1N[48EL=P:S@3<***W14'5TP*XK&;>P'M>N&6;W-@%/XE+NH$EF+OR M1N',;UDR5H#03 JB8#WSYH/SQ=3&NX#O#"J]-R:VDI64]W9RE,2:,+$2^SQ)1C*N#XA1W;]6RZW&O$Z]@UJLQG\M-&Q MJ'6$!W0,R;44)M?DH\@@^QOO8TUM8>%S88NPE_":JC,R'+PC81".R-WRDAP? MG?3P#ML-&SK>T0'>!>54I-!580V,'-!>AET2#B;A-/9W'?E&;;Y1;[YY^K!E MFKD6EFLRYVN*O8BS+@4UU7A/P6 P>1]U*QBW"L:]"JZ*$N^.38X>@%TNL"^5 M I$^$:.HT)S6]RO[C>V*]]5T'O_XE;33<'1 6=0JB_[U+*)7Z8;#<'+@+"9M MODG_6;2;3WY>0[$"]:LK=R^)==ESC3L*,P]M5(/:@9>\?3.(@@\][3EM)4[_ M7[M,7S5L5[OX>^Y2@-HX#]4DE5MA:J-I5UN;GM?N]!)>>SQ>R@T3FG!8(S0X MF^ !J=HWZXF1I?.JE33H?&Z8XZ\&E W [VN)?M5,;(+VYY7\ 5!+ P04 M" #W@:E8Z;U&,%4& "Z)P &0 'AL+W=O-&MCPN9BN6 MQ<4KOF:Y^F;!119+]58LQ\5:L'A>-,GNF/RVOA7JW;B.,D\REA<) MSQW!%I>C*_3ZVG/+!I7BSX1MBX/73MF5>\Z_EV\^SB]';NF(I6PFRQ"Q^O? MKEF:EI&4CW_W04?U;Y8-#U\_1G]7=5YUYCXNV#5/_TKF3@3?.J)4JVCEBRHW56O5FR0O+^.=%.K;1+63T\]< M,L=S7CKO.9]ODS1UXGSN?,QEG"^3^Y0Y5T7!9*$$YF?/;YB,D[1XH;[]=G?C M/'_VPGGF)+GS=<4WA8I33,92>2Q_:3S;^WFS\X,[_'R*Q2N'H L'NY@"S:_M MS6_8K&Y.FLW'*C-U>G"='ES%HQWQ'K,"=637TJ]:EK/E84H(#L+)^.'0KZG" M*,!:U;!%:EO$:NNSFM_7L1 _DWSI7&5\DTO(X2Z(=_C;88BBED-3A7PO\F&' MM'9(K0[?)7DBV\*(XQ3$UO! U#MHY-578#5T$._9JQUX/QU>S MV2;;I+%D\]*ND,E_<;GN0*8],X$$^6[+-*#"ODM@TWYMVN\[$"ZB(\,/15'07C1,%8Y0%,&VD:MIY ZQL.VC M'%O9 )EE:4,'S$1/EMY]Z&/Y!62V!&N>(3O03DTP/BW!ILR68(TW9.?;5Q'/ MU795;66=OS^Q[)Z)?T"7UBCE#OAUL8YG['*DMK@%$P]L-/W]-[4T_P'N+ :* MUNRS!B:R$_,7UD9D A%::0!9]U*#-#>1'9QGKX\(0")DVY19;&MR(CLZKZO- M-1/.%Y96:"]6R?K(>+-&[#W>!HK6[+]&,;*S^,P=&C(1B[':;;\N5/Z^RPA^L[.X:*UNR\1CRV(_[,V8%-;!,4 M>>V:$(![>*!J>CZH5>UL/W]N8(#CGDO;M@$511U3 VO8X][%[/&I@:&J-6JC M U+1H ,=6*,:VU&]FQEV5MA#])X- T5K=E@C'O>IC4^?#2:YO:B]>AT1-1UK MNF,[W7]A+IB%+V#:+FJ:UDC&=B376Y(W\>R[6F_M \P:J_< &RA:L^<:Z[@/ MUD\?8":L2>@9JX"IHEV5%-9$QW:B_\((,WGM!<9B"]3A7::)9CJQ,_V:9^N- M5"/LCB_D-A;LPCC7M0XZ>_B^@VZH:,UD:,:3)V$\ >@=M!>((Z*F8TUX\E2$ M)T!!;YJVBYJF#\ZJ3RCFG<]QQNS$M(?I/;:>HIHG>HM GN3\FP"5/#4NDUW4 M=*P93Y[J_)L =;QIVBYJFM:8)W;,ORUO!PJ>)S-5I11'UJY!J_>AHC4[KK<* MQ+Y5L-V8(D#M[;G8;U\14T8HZ3B[(QKEI/=Q.6@2*,=]X@5MDP#ANV^?:7B3 MWN4X:!(HP"&3IJS;)-6PIH,_C;="AR3? (23JG2TS#T!H'A/HI_Q"4D UR.#QZL*I]J^Q2+99(7 M3LH6JIW[*E#=%+L'Q79O)%]7SUK=!J5B.A]6;IP( !$& 9 >&PO=V]R:W-H965T MOS,#1Y M!8*:$[4&B2>ETH):W.I5:-8::.%!@H=Q%*6AH$P&V=C;KG4V5K7E3,*U)J86 M@NKG&7#53()!\&*X8:O*.D.8C==T!;=@[];7&G=ASU(P =(P)8F&S MU/E[AWL&C=E:$Y?)4JD'MUD4DR!R@H!#;AT#Q<\&YL"Y(T(9CQUGT(=TP.WU M"_NESQUS65(#<\5_L,)6D^ T( 64M.;V1C5?HZ[. \OP%+&S1$Y<*S?*U4; MC&[&H<7,G+XP[[*8M5G$;V21D"LE;67(9XQ:_(T/L2)]6>*7LLSBO8175)^0 M9/"!Q%$\)'>W%^3PX&@/;]*7._&\PS=X9Y13F<.N#%M@ZH&NE3;9:7)V.@XW M.\(-^W##O>$68HW/WET'MB\^4(E/2FN0^3.QFDK#:=L:Q6]\:=AJ=F?MVQBC M+67':;I;V*@7-MHK;,I+*MK@/Z] +$'_VA5Y+XF;5^<&$X1)@ /)@-Y D+U_ M-TBC3WNN*NTEIOLEYH\U,\QKQ *^*MXE-/WO\I+D[.R?&H5;;2I K_PP,B1W MC=1V;&_MY]VT;?-7]W98XOM<,6D(AQ*AT*FS\;N,"]/\"V1]02P,$% @ ]X&I6,SCB!#G @ 0 @ !D M !X;"]W;W)K&ULK59=3]LP%/TK5H8FD 9)TZ8M MK(U$RS[ZP(1@L(=I#VYRVW@X=K&=%O;K=^V$4$::#6DOC3_N.3[']KWN:"/5 MK+[.LD@I_I(KD#@S$*JG!KLJJ6O5PIHZD Y]\,@Z/LY M9<*+1V[L0L4C61C.!%PHHHL\I^IA EQNQE['>QRX9,O,V $_'JWH$J[ 7*\N M%/;\FB5E.0C-I" *%F/OM',R'=AX%W##8*.WVL0ZF4MY:SNS=.P%5A!P2(QE MH/A9PQ0XMT0HXZ[B].HE+7"[_C_!Q/R9A*^$Y54>D$[XC81#VFO3\ [S;:8(_D].M MCZ?K^'H[^":44Y% @Y!)*] F_XE>T03&'F:W!K4&+W[[IM,/WC>Y*LGZCLPF M_CH>=HZ'(W_=H+U7:^^U:I_EN+Z[(5AL,)T$WF>E0"0/Q"@J-*=E(J<_\9IC M83!-YS]I7>.U-DNR:,OF81ATFVU&MZ^,_D3WS.ZC]#MK])G<%T\P9QLOY M9+_)]>!%8ASWAT^)4;KY2U"ITM\JTCFHI7N[-$EL&2WK=3U:/X^G[E7PG\++ MMQ6KS)()33@L$!H<#?!"J/*]*CM&KES)GTN##XAK9OC$@[(!.+^06/:KCEV@ M_M,0_P902P,$% @ ]X&I6)$C9ZPS @ 2@4 !D !X;"]W;W)K&ULA931;MHP%(9?Q8IZ =*&@TD"JT*D4M:M%YM06;=K M0P[$JF,SVVGHGGZVDT9L!'&3^-@^__>?Q,=I+=6++@ ,.I9!L_1 ][ &\WQ8*1OA3B5G)0C-I$ *=O/@;GR[ M2-Q^O^$G@UJ?C)&K9"/EBPL>\WD0.D/ 86N< K6O5[@'SIV0M?&[U0PZI$L\ M';^K/_C:;2T;JN%>\E\L-\4\F 4HAQVMN'F2]5=HZXF=WE9R[9^H;O>& =I6 MVLBR3;8.2B::-SVVW^$D@9 +":1-(-YW _(NE]30+%6R1LKMMFINX$OUV=8< M$^ZGK(VRJ\SFF>R[-(!B]!%]D3*O&>>(BAP]"D/%GFTXH#NMP6B[X:$RE;)Q M*95A?ZC_II^/]G!H0(,E&,JX'J(;Q 3Z4MGX6C1]RP<\W MJD9H,OZ 2$@B]+Q>HL'-\%\9;$OLZB1=G<3K1A=TO=Q @3NG.:AAG[-&(?$* M[C"_9M%D%J7XM8<[Z;B3:]RXC]5DQ2/IM)\5 M=ZSX&FO:QXK/6>'L0EU)QTJNL69]K.3L?WV*R7\H?-(:[I:QYVO/A$8<=C8K M'$VM5=5T;A,8>?#=LI'&]IX?%O:R ^4VV/6=M!W3!JX!N^LS^PM02P,$% M @ ]X&I6"31*RUN!0 $!X !D !X;"]W;W)K&ULM9E=;Z,X%(;_BI4=K6:DF0FV@4"WC=2F4TVE[4[5SL?%:B\H<1)K &=M MIYG^^[6!XO#E-HB]:0,YY\TY?@7/ 9_N&?\I-H1(\"M-,G$VV4BY/9E.1;PA M:20^LBW)U#-?,0";)@R0^ZE)NS23 !2[**=HF\8_O/I&PH M+S!FB5N7D8SFIYSM =?12DU_R-"^Y^I:J/#G_BTD"?/ !W)%' MDNT(N.(L!0N62:Y66( ?5&[ (J^#<*'B+JF(UFM.UE%N UL]9PKP]I+(B";B MG0K[=G\)WKYY!]X FH&O&[834;84IU.I:M:_/(W+^BZ*^E!/?1C!/QCP##]P YR.VH9_'Z=&PI!U?KCW,]MT>O7+RN MA2D2_3Q17XV/? MZH;R]PU)'PC_IZM6JYR^%9V(;123LXFZUPC"'\ED_OMOT'?^Z')@)+%:YU[5 MN3?4CR+1.UAIZ(;^K.%'1]3,#W"W'WY5E6^MZEI9(22G4?(:,ZQ:QYHQDEBM M[5G5]FRH&;/6,KLP:'K1#L(0S[JM"*J: FM-YSMU*V2:/58/K"+'>C"26*W? ML.HW'.I!V%[>T L:'K2#D!?V> =0RW'6M6?=$7 ?4Q)%BOPV(RP"QWKQ%AJ M];8/8 V'FE%F'BZT[^&&&1U!T(,]-R>(3%G(6M8E6:G!CDS!.>$L[]]NB57M M:$M&4JOW;O@-!P.\S*Q=( B'34_:42C /0"'AN#P)83'.T[ED]V)4;D]EEJ] M8T-N.!C=L$UESX5-(]I!H>_W^&#(#>WH_B(W1(U0ZJF"ENQ^X7XU*KW'4JLW M;_@-!P,I&J8^DJ$I-D:W'*F9]T7G!F5 MZ6.IU5? 4!T.QCKLX+H?MIQI1WD!4(XKL=D/L4L<:,I9: MO7&#=C08[:B#VD[H>0U'.L+4\R+J<<3 '=GA7G\6+*\4_>BO+Y[773GV7SC: MJ/\#^,@ 'PT&/FJCW$$@>LT6NL[FM6.4:D_ MEEJ];4-]-)CZJ UT!&'S1M85Y;M!CQV&^\C._:ODJ23+ P%1M@37V8>8\GA' M97[EZ+=I5I-&G0/&4JLOAID#T. Y '7, 3.W^9:K(PJJZGI,,G, >N%A/EE% M:?$BT^K%J.0?2ZW>LR$_&DQ^U&8ZQ*V9K".JQPALL(_MV+]7;=*XN%"*B?E5 M8+&K'FO,6&KU-3 3 !X\ > VVM4]RF^^"FY'N=CO&9:Q&0"P?0#XI#SYIMJU M.S$JXL=2JW=\\$Y^^$OYCJ=UZ&*G:457V,SI\\) 'MLA_^73S7M%$DG6/%+C MF,@OF$NJWPT_[/1\9O5H5.Z/I59?"<-]/)C[9>;AGDB P];&23L*.@@VY[#I MP=Y:2O@ZWW(4(&:[3!:[3M79:EOS/-_,:YR_@">+8G/2R!1[I3<15S.; E9 M*4GGXTQ5QHOMQ^) LFV^@_? I&1I_G%#HB7A.D!]OV),/A_H'Z@V@>?_ 5!+ M P04 " #W@:E8?U'W6(L" ".!@ &0 'AL+W=OUI)&V71![**JZ?!P0!S>9-F$= M.]A.NTC\>,9.&MJ2K3AP2>SQO.>(!AY++O3$RXVIKGU?ISF6 M3 ]DA8).UE*5S-!6;7Q=*629 Y7<#X/@PB]9(;PD=K:%2F)9&UX(7"C0=5DR M]7.*7.XFWM#;&Y;%)C?6X"=QQ39XC^93M5"T\SN6K"A1Z$(*4+B>>#?#Z]G8 M^CN'SP7N],$:;"0K*1_LYBZ;>($5A!Q38QD8O;8X0\XM$+C> ML[]SL5,L*Z9Q)OF7(C/YQ+OR(,,UJ[E9RMU[;.-Q E/)M7O"KO4-/$AK;639 M@DE!68CFS1[;/!P B*@(0M8#(!=HHQ M;^@^B_+3EGO:<(=/<$GR>M+54,U=E2VM;;),/:WA^+/>1SI M&W7Z1F?U[?7 3(H4A5',=L-W=5#*8# !I260O3-$YG[8;JC9LE)_8I#=MF-OZA:28UM<6F$!HXKHDR&%R2,-5,OV9C M9.4&R$H:^I[<,J&ULC97;;J,P M$(9?Q4*]:*7=T;[]C("@-)-H;\&'^ M\3>#9YC74KWK L"0CY(+O7 *8ZH;U]59 275U[("@3MKJ4IJ<*HVKJX4T+P1 ME=P-/"]Q2\J$D\Z;M0>5SN76<";@01&]+4NJ/F^!RWKA^,Y^X9%M"F,7W'1> MT0T\@7FI'A3.W-Y+SDH0FDE!%*P7S@__9IE8^\;@#X-:'XR)C>1-RG<[N<\7 MCF>!@$-FK >*KQTL@7/K"#'^=CZ=_D@K/!SOO=\UL6,L;U3#4O)7EIMBX4P= MDL.:;KEYE/5/Z.*)K;],:BES/78,HUJ&; M=ML<&)X[]1=4U"?UO)/"":$2^/"]?0=;+PZ]R%Q/09R'HLQ T_J(3_AYI MC4DUH!CEH]&T\J21V\+8I?[$]Y!\=P@]8A7/HFEO]84M[-G"LVRO6 8VVY62 M&>A1NM9!?'#N+/)G1W!#(S].PG&VJ&>+SK+MK\DGR206]D9 3HPDTA2@1DFC M(81_G,6AS>Q$"N,>,SZ+><<$PQ+)R4;*\=L:#\Z,DMDQV- HB*;>.%K2HR5G MT9ZEH1P_;U]N8W3)X%Z%?ACZ1WA#*VSET]D1GWO0*VR?QDK<,*$)AS7JO.L) MQJ?:WM=.C*R:]O$F#3:C9EC@[P*4-<#]M<06TDUL1^I_0.D_4$L#!!0 ( M />!J5A[ G3!G@8 &LX 9 >&PO=V]R:W-H965TTJW1_ M_#DO37"2N63W[)>6A/CSV'Z^L-F8!Q+3!0N^^BNQO>R,.VA%UV0?B!OV])'F M#1HF/(\%6-8@]*/L/_F1=\1! =G0Y@)F7L"L%C!_ M4J"?%^@?&V&0%Q@<6V"8%Q@>6\#*"UC'MF&4%QBERVH6B(^=*0*U,+O";\/>H;9\CLF0-T?VNCD[>G:"W>O3%&XP\- M%5PX;2 ?2?]I]/-1)_9K^Q%"OL;453J:3BWA'/'K9D?-%3/DC[9HUXEQ=K(+3O)AH0YD# , M"7,']5MG,AX5':OD>%CD>*C-\:?(XTERDVDH^W2:S#.5U*///GGP U\\-R5\ M6$OX^6 PJB2\Z2*S]E2)@#"<.0,!<(IDA@5$A@I)5 =DMCXJ5I3V[W6ZD'LF.O]"%:RT-?87.(PM16;1Q((&OB@-(P M*,V%HJFR*>U)HZ4_J5V2Z&&M!5)W*^OC!ZA;"4K#H#07BJ8*H70L#;UEN>3, MDT-(;4GB[#G;E;]NT;]HOA6&D@ YL2""HF6RJN7B&9W=JZCW7>13M9>:SAW=+\IR8KXVO@>DY;?,+ M2K-!:4Y..YS+S/&@DMW\HLGA159EQG.AZJ7FMC1"3;T1"K&.U(=HG79(F@U* MLL4;#F1QWEE]ESHJ]-: M)D<%=4"#8E":"T53\U\ZI:;>*6U<3LA4YV\A-V8:U 0%I=DY33O+.Z A,2C- MA:*I)MFW8TT1L-QKU=]WU#\Q!': 3T15)0F@-*PZ T%XJ6::1[L+4II'R3[EJ+D!J5B+ M#D96'@, L+ 9 >&PO=V]R:W-H965T1"MVT26.KRKIJFO;!D(-$3>+,-M#^^YV=$%X6W!=U M7XCM^)Y[GKOCQ;CF($"4RE@J#X6,(0DD0A(8\_):A5^52&V^LU^D'J-J*IA8Z-MD8U M<:;2.)8'1.^#1)R.6R4B0#UD(X:Z]C>PK"=Y:PL S M HXH;Q+??4<\QVO5\!D^W=PWT/&KB/H:KW4 [UL.G,HXFY-$1W**D:R+4H'2 MT2CJS[8,6FVW9R^WF=?<<9SJS@Z]5D6O9:0WCAB7)Q)X^@B_UC^^_3UVIAL[ MW-H5M[:1VZW^TT%(Z!)C. ?L$ZH3;6*I:3>P_AZ Q-SMJ%0"D M0U)=BW558T10W?5Q4:R M7 \O$R9Q%-++"*=5X.H"OI\Q'&#*C7)0S;_!7U!+ P04 " #W@:E8KY)S M!G@" %!P &0 'AL+W=O;';8-(Z16[F[GB1LUY2TL(=1Z)O&LS?+H&RW[*MI9YPB[S# M6W@ ^=3=<16YDTM)&F@%82WB4*V]I@=GQB\!.[(V1+F7-V+,.?I0K MQ],9 86-U!98/5[@"BC53BJ//Z.I,S&U<'_\X?[-%*^*66,!5XS^)J6L5T[J MH!(JW%-YSW;?82PHTGX;1H7Y1;MA;Q(Y:-,+R9I1K#)H2#L\\>OX(O8$07! M$(R"P.0]@$R6UUCB(N=LA[C>K=STP)1JU"HYTNJO\B"Y6B5*)XN?3 +*T#FZ M 56;4(-;+'M.)%$!JX9I=$/PFM!A\O0:)"94G*$31%KT6+->X+84N2M5/MK5 MW8SLRX$='&#?8KY 2_\+"KP@1$\/U^CTY.Q?&U>5,]443#4%QC<\X*OM;-D, MJMBH]+_UI?#3+,[=%PMK.;&6QUB1C36HHGU6'(9V5CBQPF.LV,8*YZREO[2S MHHD5'6,E-E8T9WG9 58\L>)CK-3&BF>L.(GLJ&1")9^B'FM0O:N2P&W 9 9, MX\P.3"=@^CF024P1-:>HPV^JGTGK24EGZ"3,/#L[F]C9I^P;$ *1INLEE.JH MJJ)!2!L\F\'/T^! X;[WM[-XQTNW=@5O=A#C./;_X[E[34U?$*I;;$DKU+NL ME,Q;Z([*AYX[!))UIL^MF51=TPQK=4\!UQO4>L54KQL#W3JGFZ]X!U!+ P04 M " #W@:E8+FTX 'T' '0@ &0 'AL+W=ODSC-CGMSI18? M^OUL/.<)RW;%@J?ZDZF0"5-Z5\[ZV4)R-BF"DKA/'6>OG[ H[9T<%<>NY,F1 M6*HX2OF5)-DR29C\><9C\7#<^768>N+K]1 ^*B]<7<\/B#5Q>_D[6_NGO.Q31Y(F(>$^25LKX#E7> FN>$H$H9J1[6 MJ1Y:4UVT)A=IIN12=UQJAYR+>YZR?.M:YU<0,=6'TDS$T80I/B'!,F\?RE9( M"?,S_^SBUCMM4X2U$ET5@81Y2)B/A 5(6%C"1BLZ'-0J-(0SJH4S>JUP@NA1 MB^%\SN2,%X>E'BR5D3 / M"?,/-V8%U!VLYQU98@B"&7EWG<:\<%X<+.Z0[X7?I(>&I]60L)YGZK$A;Y.# M'=M5#U":!Z7Y%>U@11+.KC-E(W,ZDYSG M$XEZU$#^)9=O6;+X>$O.6/K#.IJPE]19)TB:!Z7Y4%H I84HFJDGVNB)=IN1 M%CW-NS\YDVW>VID=UUDT2)KWPJ6.R$]]5>TN+[(> 906HFBF0!I7T[7;FAL" M,?J?W#_W[_,62$SU^*2X2=(J&ZB[":5Y%6VM%UGS&WUHF0&4%J)HID0:-]2U MVZ&O[)/T\6M^+^+[W"$_EWP2*1*P<11'ZJ>]XX(:HU":!Z7Y4%H I84HFBFZ MQDEU[5;J)[U?^.RF<';()7N,DF5"SH34T$);3-=#?]:J):B1"J5Y%_+M9VT<6,.52\S MY8V3ZMJMU-=W1L7(MU@R8.U\H"8LE.9!:3Z4%D!I(8IFBJRQ8EV[%[LQ*-;= M#R>GB5BF[<-?J#4+I7D5S?#51BV]#++0 $H+4313#8U#Z]HMV@TU>)(]D"LN M(S&Q3:6AOBV4YKUPQ=0RE4;6(X#20A3-7-K5&+K4;NA>23'F?)*1J10)N
CGCS^'7(K%(O;-%.5L/IC/1BM_U;/6\YRZ<9/VK-7MVMW :4% M4%J(HIF);TQ;:C=M[1[*#O&G4UZL6LT;C;$^@\U:G7U[,5U;C(J6&]JKQL> MKLL$ZL4^4^K^NFL/+35$T4P!-"XKM5N/ISKM^0*P3X*EO^C:VTOJK &H 0NE M^5!: *6%*)JII\:4I793MED+8-H@MIX#ZL!":1Z4YM/-Y:/K$UEH@2&*9HJA ML5^IW7Y]9>.R]8S77GQGY4#M5BC-A]("*"U$T4R1-78K[;AR]849KQW76310 M7Q5*\Z&T $H+Z::#/')6YPNF&AI?E=I]U0TU?$V7F6Z"-CWW'9M&H.XJE.9! M:3[=-$X'FTY^ "TT1-%,C31&++4;L1L:J2>Y3XO=S3O)Q?DKG=.6:V+MM>@L M(J@?"Z7Y4%H I84HFJFUQH^E+_NQKUDJ9\=V%@_4EX72_(JV/NUV#]>;(*@Q MBZ*9LFB,6=K1F"T7TY9MT#5S MWO71^FT&I\4S_&O'??=#4+Z3H,&4KTBX9'(6I1F)^50CG=U]/8J7Y5L'RATE M%L5#[W="*9$4FW/.)ESF)^C/IT+/Z:N=O(#ZW0\G_P%02P,$% @ ]X&I M6"F1QF,] P F@T !D !X;"]W;W)K&ULM5== M3]LP%/TK5H8F)C'RT4]8&ZFT3$.B \'8'J8]N,EM:Y'$F>VT[-_/=D*:TM2% MJKPTL7W/R3EV?7W=6U+VR.< CW%4<+[UER(]-RV>3"'&/-3FD(B1Z:4Q5C( M)IO9/&6 0PV*(]MSG+8=8Y)8?D_WW3*_1S,1D01N&>)9'&/V[P(BNNQ;KO7< M<4=F 7 >PEH;@$T"H">.3M7IFV-L,!^C]$E8BI:LJD7/3<:+=V0 M1"WCO6!RE$B<\+]3 +LCQQ[N!^AXZ-/Z B1!/V8TXQ+2MZSA92L/FP'A;R+ M7)ZW15X#C6DBYAQ=)B&$ZWA;6BW]>L]^+SPCX1BS4]1P3Y#G>,T:/4,S? 1! M"6\8Y#3*Z6]HON86OLT9'L0T2T1U&>IF+6=M:U:U4Q>^ZS@]>U%U8HY9D]LL MY3:-.,052N=9TX(X?*2^<\Q0'T+9EX.+ %6/['#V[;^5*W'@ Y#Z#.MMF+OW'\\Y.D/SKN$Z=4R-^3Z?MTFG[34XO MGU+"L$ZTV^R:"0>IVF>.MNNUZNP:\7O:[91V.SNVG7'8SE2;SU)#<3[&O96UGV M#I-C=O"\PJB18%^CJQ+&?9\:QMTL4#82C3DF%VQ7JM\8V$Q?"C@*E(:\$"Y[ MRXO'0)?;]BH\O[7(0WI&$HXBF$JH<]J1*8[E%X&\(6BJ:^D)%;(RUZ]S>7D" MI@+D^)3*>KIHJ ^4US'_/U!+ P04 " #W@:E8UW*"K+ " B" &0 M 'AL+W=O'SW>9;(5\ M5"F 1D]Y5JBIEVJ]/O=]M4@A9^I,K*$P;Q(A.*>W!#-G"JY$]H,O=3KU(@\M(6%E MIF_%]C/4 0VMWD)DROVB;;4W-)L7I=(BKXV-!SDOJI$]U1^B94#I#@-:&[@/ MX5<@Y^6,:19/I-@B:7<;-3MQH3IKXQPO[*G<:6G>(%ND]%J5BQ5!-?&Y>L ML+^H\9<5GN[ 7S-YA@;D Z*8!NCA;H:.CT[^E?%-1$U8M F+.MU@AZZ3.Y9@ M\W()\J3/LTIAY!1L\F[B 0Z'$W_3PQTTW,$A[K"/55D-6ZR 8-S/"AI6<(@U MZF,%'=8@"F@_:]BPAGM9+@'NGQ.@CSKL4 G!).S'CAKL:"_V(DN8N7GV^OZ\ MAGP.\EZ^(K6OG:LT6,/5,X5(@-^#%[]^1$?ZX)]/"QL7PS9D6=D]_'.WX M-%'#C5Z5:5&'17&T(ZO'#6O\JDP;=\^!J5CJ+O?X>1, %!) 0 9 >&PO=V]R:W-H965T=F#@GA)-XYIN6G3^F(>1\S@DA/^SXNNQW]WGQQ^PJ24KEV_4TF[T_ MN"K+F[='1[/)57(=SU[G-TE6?>43)-)F5-Q-4_=\EI,IW64K6._S3HP7+.>N#J[4?= MG#_YZLE\C6?):3[]9WI>7KT_&!\HY\E%?#LM/^7W=M(\H6'M3?+I;/Y_Y;YY M;.] F=S.RORZ&5RMX#K-%O_&WYH?Q,H [?B9 5HS0-MU0+\9T%\?,'YFP* 9 M,-AUAF$S8+CK@%$S8+0V0!T\,^!-,^#-^@SJ,P/&S8#QK@..FP''ZTL:/O?" M]1Y?N=[:D,&SK_7RQ5Y_M9]]XNKCRZVNO][/S_+X@JOKK[@Z>F[(XTNN[OR: MJX\O^N(7_FCQ&S]_N^AQ&9^\*_)[I:@?7WGUC?E[;CZ^>I>D61T/G\NB^FY: MC2M/PKQ,%%55?E$^E_GDCU_JM]JYQ'.V9Y:A*D&?EU4PQLO/D?,-X3SZ^OVU\N&5^;1L0;0&&$N"H>G&6KY#V M^ I]U*1B$!>OE=[H4-%ZVD#Y];.NO/KIY^8GOV%]IW+-C;/7BKJSIF];VX/2 M&\^Q_G;,V.6)[JR9NVC'E?H[J3*M+O5U"&G"[9. M%Y+311 F),M@F2R#G9-%V!Y'J;**^J(>?Y=!H7,^4F M*1:Y^7.=8,M@WQ1ETF?6-Q@,1"$HODP3/8%/M"A!TO(^Q8*GVJDJ=()_4'W/.Z"NE> MH93JFCXDII.806(FB5DD9I.80V(NB7DDYI-80&(AB440)B22VEM&4ET:M^?] MPO_/]PW/XRW.%JW^XP>G35 M1#5(DH3@VZEI%7==^7" MCD%7[V!6@WFH9J":B6H6JMFHYJ":BVI>HPG'(8_?'*\77*&3 M!J@6HEI$:6+.:6W.:2\TYPY7:[2>*2>5+[YSUI&:CFH&JIFH9J&:C6H.JKFH MYC7::J7G8+1>=8%.&6R8LC]6UZJQT"DC2A,#K*U=5^7%Z\]^2E9EBG%],\T? MDF0F_>A,/D'GD$&KUE'-0#43U2Q4LU'-0347U3Q4\U$M0+40U2)*$V.K+8RO M^S)?U/%)^8(ZQQRIZ:AFH)J):A:JV:CFH)J+:MZ6M]/&HVY-I)'K"% M1+6( MTL1(:TOC57EMO&Q+S,G.DRKCSNOXTM,BF91YL66K#"V=1S4=U0Q4,U'-0C4; MU1Q43NI\ZVRC8F&UO"C6HAJ$:6)B=;6\:OR,N0_OU%6/6!KN]*7ZO;D M*E&B+)%OS*$%_JBFHYJ!:B:J6:AFHYJ#:BZJ>:CFHUJ :B&J190F1E_; :!^ MYQ: ^7D/9X?U1MVD>E!\F6S,.K01 -5T5#-0S40U"]5L5'-0S44UK]'&*P<0 M>Z^U]3-(H',&J!:B6D1I8H:U+0"JO >@BIKYZ5NSR>-VF&R#;G%K5I^>XDNU M5?8YR=*\4((XBYNTDVZCH2T$J*:CFH%J)JI9J&:CFH-J+JIYJ.:C6H!J(:I% ME":>EK3M)]#^5_L)Y OO&H>HIJ.:@6HFJEFH9FM/J^R'O=Y:[:FSX5'J^,G# M7'1I'JKYJ!:@6HAJ$:6)^=6V"6A[;Q-8)E289W>+&MGF+L7,BXLDK>ZIOKD\ M\=CGQ:EHM\47VB6 :CJJ&:AFHIJ%:C:J.:CFHIJ':CZJ!=K3#H;1D[\.(3IG M1&EBRFEMRLF;!/:T%TH>89 _@\YYAW8*H)J!:B:J6:AFHYJ#:BZJ>:CFHUJ M:B&J190FYF+;>Z#M M87BS?H0!G3- M1#5(DH3,ZQM1*AN?J\]V*;%,\[.Z[,_)O/-PS*?WUT]ZK:< ME=6WJIQ;[LYNVXF5+KUST)&:CFH&JIFH9J&:C6H.JKFHYC6:?$?11^<,4"U$ MM6C;ST,,L+;M0).W'?S G=/'S;:\OEY=6FW'?B32?5>T MU0'5=%0S4,U$-0O5;%1S4,U%-0_5?%0+4"U$M8C2Q-AL6QVTW2]%\+).<"1? M>.?:!@A- MW@#Q HY=?+G/Y=M_:'<$JNFH9J":B6H6JMFHYJ":BVH>JOFH%J!:B&H1I8FY MV'9':"^R.T*^JLY9AW9'H)J!:B:J6:AFHYJ#:BZJ>=K3[@AU?<,.;8U M1#5 M(DH3 ZQMC=#DK1$O^L %VDN!:CJJ&:AFHIJ%:C:J.:CFHIK7:-L.7* ]$J@6 MHEJT[>*@L9EIP+5#%0S4>,ZZ(0NJGFHYJ-:@&HAJD64)F99V\70![H8_EJ6_7IS(\TRM*$! MU714,U#-1#4+U>S^TS)_=?VON(-.Z:*:AVH^J@6H%J):1&EBFK7]#/T!^*G: MZ56:7"C&MV1R6Z9WB1)=7*23*JKJ(P&+[YEI5EEI/%U^3_HAF71QG9.,U'14 M,U#-1#4+U6Q4P,XIV,*":CFH& MJIF-)MGAL[8_Q$;7Y*":BVH>JOFH%J!:B&H1I8D!U?8:]('+*NQW#Q/M*4 U M'=4,5#,;3;H79^WR(!M=EX-J+JIYJ.:C6H!J(:I%E":&5-LHT)Z_H[Q)@R4Y7<)>ON7-VH?7^J&8TFG#I[5Y_/;F>/DA;KZRT MT'79J.:@FHMJ'JKYJ!:@6HAJ$:6)N=46\O?):QS\E4_LR1-.RI]4YV!#2_Q1 MS4 U$]4L5+-1S4$U%]4\5/-1+4"U$-4B2A.BG\NLEYM2^:W:5%GM495>71EV1RE>73_#)-Y/V4 M\@5UCB2T@!_5#%0S4;:5H !T KPO8O4Y&ONG'!H=T"CK5:,J;WQ>L"A1?^H9J&: MC6H.JKFHYJ&:CVH!JH6H%E&:&'!M&\& O-Y UP,)9 6;_(ET3CVTK0#5#%0S M4VR:%P8N\[(!\59VS#FU#0#4#U4Q4 MLU#-1C4'U5Q4\P;;+SN 3AB@6HAJ$:6) =9V*PS(;@5A^^ZLR"?);-:A1 3M M,4 U'=4,5#-1S4(U&]4<5'-1S4,U']4"5 M1+:(T(>"&;8_!<.\]!GLZ$"%? M>-"%0S4,U$-0O5;%1S4,U%-0_5?%0+ M4"U$M8C2Q&!L>R"&+[T'0K[ SK&WM6M!1RR"JFS\XR[;T0,@7V#G+!D^/=*UW+>CHE :JF:AFH9J-:@ZJ MN:CFH9J/:@&JA:@649J89FT/Q%#> X&<">[PN=/ '<[/$:>G=^FL3LCE'J_\ M&*Q\R9WS#>U^0#4#U4Q4LU#-1C4'U5Q4\U#-1[4 U4)4BRA-#,*V2V+XHKHD MNAR#'3TY:MKO#_O'XB;:J?SY=T4(Z"=8J_5)J.GY[]?WYN5/X>N 85J!JJ9 MJ&:AFHUJ#JJYJ.:AFH]J :J%J!91FIAE;<_$".B9V&NUR>CI:>Z?U(>U -5" M5(LH38RKMFUAM$O;@N1S_##/[JKMJNK;S;;6:3XKJWM+Y2$IE4_))+_,TO_6 MQT _7.>WU>AGCG_*U]$YW= K-*":@6HFJEFH9J.:@VHNJGF-MGKT?C!6UZ[# M[:-S!J@6HEJT[>%#=_$YIU!2>7>3%X]WS?^/N)@I(^4ZS\JKV<9M+G)! :J%J!91 MFIAR;4/"2-Z0\*18X_&#JS13OEP52:+\/G^Q5LHM9/4=CZ,7L1G-:VX?RT.4 M(*G'R9L1Y,OMG'QH,P*J&:AFHIJ%:C:J.:CFHIJ':CZJ!:@6HEI$:6((MLT( MH[TW(_R9$@SYJCIG'=J0@&H&JIFH9J&:C6H.JKF-)BF:\- )?50+4"U$M8C2 MQ !KNPQ&0)?!?DLPT$LMH)J.:@:JF:AFH9J-:@ZJN8TF*?GQT E]5 M0+42U MB-+$+&L;"D; ]1/V6X*!M@&@FHYJ!JJ9J&:AFHUJ#JJYHPT7/U@O^?'0*7U4 M"U M1+6(TA9I=C2[2I)2C\OXY-UU4EPFI\ET.E,F]='&]P=U8<;R7J5(+JJT M4]]^T Z.GMSOJ6\#M;[_J&5.WMU4Z13$Q66:S91IW[Q*XO.DJ!]0??\BS\O'+^H)[O/BC_FR3_X?4$L#!!0 M ( />!J5@#M$6C0P, .T+ 9 >&PO=V]R:W-H965TICVXR85$=6QF&VC_ M_:Z=D/(1HE:B+^"/>T_./2>Q;WG[ENBI*(*/J0LR! MX\Y4R(QJG,J9J^82:&R3,N8V/*_E9C3E3K]KU\:RWQ4+S5(.8TG4(LNH?!X" M$ZN>XSOKA;MTEFBSX/:[C[^5CBS"U1XC0#KE+!B81ISQGX5R/?)MB( M7RFLU,:8F%(>A'@TD^]QS_$,(V 0:0-!\6\)(V#,("&/?P6H4S[3)&Z.U^A? M;/%8S -5,!+L=QKKI.=<.B2&*5TP?2=6WZ HJ&GP(L&4_26K(M9S2+106F1% M,C+(4I[_TZ="B(T$Q*E.:!0)C=V$\$!"4"0$MM"#O?15%* M91IK98:-6L!;*B](X)^1AM<(*_B,7I\>U- )2J,"BQ<>P,L%'UK!Q_09OR1- M!E)2/@,S/EL+7Z5$[;",V:(1; 6QYQD5VI.(^@Y>%0ID$MP^A\_^"WOE81XE5[=ED2OJPEC,L7V-;+?1; M;3L2V)8*G5*%SKO9UMGS)-QQ;3_BD&N^]W+5>K6,OP('29FU;1#C99[BM4A- M&_,JY^K1WVK=L="VM=AH._QW=6 [M9WUH>EE;4/V I,WPGBHSE*N"(,I0GH7;7RG9-Y;YA,M MYK8]>Q :FST[3+ ?!VD"<'\JL$4K)N8!98??_P]02P,$% @ ]X&I6%57 MT%'9 @ 8 < !D !X;"]W;W)K&ULI57?;]HP M$/Y7K#RU4B$A =I5@ 2TT_;0#;5:JVG:@TDNQ,(_,MM ^>]W=D(&';!*>TGL M\]WG[SO[SH.-TDM3 %CR*K@TPZ"PMKP-0Y,6(*AIJQ(DKN1*"VIQJA>A*370 MS <)'L91U \%93(8#;QMID<#M;*<29AI8E9"4+V= %>;8= )=H9'MBBL,X2C M04D7\ 3V6SG3. L;E(P)D(8I233DPV#&:P,7MCXI3,E5JZR>=L M&$2.$'!(K4.@^%O#%#AW0$CC5XT9-%NZP/WQ#OVCUXY:YM3 5/$7EMEB&-P$ M)(.._9%/[1@%)5\8J40O=1[V CK7)P+B M.B!^;T!2!R1>:,7,R[JCEHX&6FV(=MZ(Y@8^-SX:U3#I3O'):EQE&&='7Y0% MTNF0%GFR*EVV7$HR,E4"KXFA/M,S3N5NG7PMGQ"M.:^Z3B'I_@ MGI ')6UAR+W,(#N,#S$/33+B73(F\5G !ZK;).ED>@VIWEE2]Z\E]@J\ M?:D2 B^:\1<8>]42FV.I60IDK3A>8L[LEN384)0^1KWW-[%V[_H-^W\X'0CH M-P+Z9P6\^!Z$ N@:-+94 CM%G.5 5%Y+4KOJVP+56'L7W_%_>4S*^?WZQ .0 MA A?5\\U*@%[X'F[PD%;25J7:6)MG8NR[XQO[!)^/JMO_@:G> M'BS$!<.$<,@1,FI?X^GHJI]7$ZM*WQ+GRF*#]<,"GT#0S@'7!J5@AXJ85]0( &,* 9 >&PO=V]R:W-H965T M=YW^#DC+9TGJ 7%)E_*J;2_:%OO M]1R4KJ7B11VL"0K"JBM^K(UH!83!D8"@#K!&N%4A2WF#%9Z,!-\B87;K;&9@ MI=IH#4>8>2KW2NB[1,>IR1>N /D^ND3WBJO2TZIT<*1TB&XY4[E$[UD&V9_QKI;1 M: EV6J;!R82W6/10Z%^@P LB] ZY2.98@*PO)RJ$C5NAK1 =J5"IETC_O:7" M+"-L=8'8NEB 0'RY*W=&6#T\1[\ZBU=JJEJQK65.SV82>[$^32-WT\$8-8S1 MWS-N[;]3/UF\ :%/&X)'$"F1@$I!4K#(&:<4"XE*+<9"&_J]BUT**I)^2X'O M]:(C N)&0'Q2P$>!F49]A;'Q@;%^$H=)U,V5-%S)R[C>R,SDT$R_%X;=T/T& MNG\2^GV-]AH[^P=V7D;#(.X&&S1@@Y>"O9&?@P,_PUXR[*8>-M3#D]0SS%+] M17F-F\-#-X,P\OQN,-_;O\B]%Z*]D9]U_6>G/>@? 6]]@?Q_^%*MB[7]3:+ MBXX MM5_ZV[DB6AV%I0[5M;2!HNIHJHGBI>TB%ESIGL0.<]T%@C ;]/TEUYU$/3$% MFKYR\AM02P,$% @ ]X&I6/31T%$$ @ 0 0 !D !X;"]W;W)K&ULC51=C]HP$/PK5IXXJ9 O.$ZG$.D.5+4/;=&A]IY- MLA +.T[MA7#_OFLG1%0]3GV)O>N=\S9ESLM7ZX(*OY2*(G""04*!CX#2<8 E2.B*2\;OG#(8M'?!Z?F'_ M[+V3ERVWL-3R5918+8*'@)6PXT>)+[K] KV?F>,KM+3^R]J^-@I8<;2H50\F M!4K4WD'JCG3)O:\61YYG1+3.NFMC2UY?UMF/QN>>7/<% MOK'1"I +:>_8:,T-U%@!BH*[Q)C9BE(V"Y&$NNW"HA?UW(E*;HCZQLV$I?$G MED3)]!WX\F/X"HH!GOX-#ZD]0X^2H4>)YYO>X.L\6P9G,(6P?"N!C43=V[M[ MSU]'./.$[B&=\B1Y2._)S.G:Q[]E\3R>I[.AK-,;7IVO>UO4G[T@01)V!(PF M!J5C?LA>C"0, 'L* 9 >&PO=V]R:W-H965T3'(C5Q,YL ZVT#[]C M)P3:!H16(>TEB>US^9U_'.<,5T(^J@Q DZWRTHX\YX:.B:FE*D0CV;P+1TYGB&"'!)M0E"\+>$:\MQ$0H[?=5"GR6D>09*&T*&IG M)"@8K^[TJ19BRR$,=C@$M8,5PJT26A@?@^.2=W6B2/YZ;"E%R+ E^[HE:X24XYKM_S)2B-B]:07!HY MF7XF)Q]!4Y:K4[2Y10O)DHW5SQLHIB!_#5V-L":EF]1@5Q58L ,L)#>"ZTR1 M3SR%]*6_BT4VE0;K2J^"O0%OJ.R0T#\C@1=TR0?B$I51":J^[#*.X.W64+6;\=RC;D22M 5YH&G2"P0[RK7^3?_0# MM4ZQ+6L01?UPQPOW@PU<\-^=J372J\W;?7VHNEO]0 %R;KL>11*QX+IJ#9K9 MIK.ZK/J)C7G5EN%?<\ZX(CG,T-7K1"BDK#J=:J!%:;N+J=#8J]C'#+M#D,8 MUV<".XQZ8!(T_>;X+U!+ P04 " #W@:E8H%PP\(\$ !A&0 &0 'AL M+W=O&>3SV,$RV MA#ZQ$("CER1.V50+.=])K]$ZY')"GTTV> WW MP!\V"RI&>H421 FD+"(IHK"::C?FM6_:4B&7^![!ENU=(_DHCX0\R<'G8*H9 MTB.(8@CEX M1\$J%:RF@O..@ETJV*=:&)0*@Z;"\!T%IU1P3K4P+!6&>>R+8.61=C''LPDE M6T2EM$"3%SE=N;8(<)3*E77/J;@;"3T^^T(X(--"'Y&7;&+R"H#N.5D^H45& MEZ&@#"UBG*(+%SB.8H:^P0O/<'PI%![N773QX1)]0#IB(:; 4)2BAS3BK">&7]8Y?-KHC*0\9\M( @A9][XB^T0&@BR!5 MD;+>(G5K=2+>8=I'MME#EF$-VA[HQ]3=T]7MMG#\F'6_6_W7+.TCR\[5S8Y8 MVM6JLW.\P3MXQ1+[S%@& 7(S&J5KM :D:"'ON,X@U[GD:Q-'.T>,K MVI=;X-=\^F:+J4@C-V)+DLEQ(G_:".KTX=R4<0[RH9$.[E$)3Z5#OB*P&G_# MBK]A)W^=9^GO=Y \ OVCC9).V',I40GFJ@3S5(+YBL!J1(\JHD?_=J)^R>1J M0&15"#%TD_&0T.@O(2HWVZ*T:MUA.WT[=[6H!'-5@GDJP?P"S-G;A2S'$'_5 M5E1;!^-J'8S_<4%3T-I=T;!C5(\/W!Z81J,FF7?Z>"Z%*L&\%O='ACUJ'+F* M3-88O*H8O/JO2]*KPQ)QV&"LTZ=S&5,)YK4Y;S3X4F2PQI=I[-Y-[+RLI MZY7EJ:"L2+@S"M723JT@-/M6DZO3Q-QNK\^EX32COBJC=2KVF@CF",%I;Y=I+N;0RF"G>^>>A"7:>"_F1M]LOI(HM>DI1?-5 MH=67@[5;#M;_X/6EVXFS2;>.OL H->@I1?-5H=49W_5SS",-G;;$WI$MSLX7 MN0K:DU=IZT8IFJL4S3,/FT9CL[F3*VWTZ'N=X03H.N_A,Y2G5M'ZK&:K[P0W M>7>\,3\WK]VBV[^#*3X^B*UZ'8D"-H:5@#3Z(U'ET:*?7PPXV>3]YT?".4GR MRQ!P %0*B/LK0OC;0!JHOJK,_@902P,$% @ ]X&I6.B&*73+ P WP\ M !D !X;"]W;W)K&ULS5?;;N,V$/T50EVT">!& M-]MQ4MM ;&\O0+,P-MDMBJ(/M#2RB$BD2U)Q_/UW=S3*@S'IJ].1\/62$S0F'.D2CR'//-!#*V'CF^\[KQD2Q3J3?<\7"% ME_ \M-JSM7*K:W$) ]^"4> M.9Z."#*(I#:!U=\S3"'+M"45QU^54:?VJ15WOU^M_VC *S ++&#*LM](+-.1 M,W!0# DN,OF1K7^&"E!/VXM8)LPO6E>RGH.B0DB65\HJ@IS0\A^_5$3L*"@[ MS0I!I1 <*G1/*(250FB EI$96#,L\7C(V1IQ+:VLZ0_#C=%6: C5U_@@N3HE M2D^./S )R _1]^A]OLK8!@!-@$)"))IGF IT,0.)22;0([S( F>72O33PPQ= MO+M$[Q"AZ#%EA< T%D-7JH"T63>JG$]*Y\$)YR&Z9U2F KVG,<3[^JX"4J,) M7M%, JO!>\RO4.AW4. %W89XIE^N'EK""6MR0V.O>\+>#!+@'&(T9;EZ=P*; MS/V5X 7)B-QTT#3#0I"$0-Q!'QB-"B5-91.1I:.^<:2?YO/8[]WTA^[S+CIK M-+H@W(H5CF#DJ!+PMRMAM]Y?4H,6%*_.O$=^HDS(= <;YIH*V,9[-R_=^4?7+\UWI9L]&LV^NW84!R\ MD+S(T1VEJGR&I5;$G+H*9E\*\?S(R(B(,^43W%ON3I M;!@<94,XN#G(AP:9ZZ"6V<-S4^.YL>)Y3'6*+KAJ0*VC.ST4'Y;1@ZJWZZ$J(N=YJ$FIY$$_XB$(PJL(;:E M(-A2$/P'26$D&@D(&K+@L.;;0VQ+P;;9\\]V>V^0!:?+G'_< QXQ\#4Z0'_; M OKV'O"K5?C*K[W$-PD=U7AW9U3*@2_-!"E0I#V7&UL?5/;;MLP#/T5P4\;L%6)G6Y#X1AHV@WK M0X<@V>59L6E;J"Z>1,?9WX^2'2\#VK[8(L5S>'A1/ECWY%L 9">MC%\G+6)W MP[DO6]#"7]D.#-W4UFF!9+J&^\Z!J")(*YXN%A^X%M(D11Y]6U?DMD.),Y90!> MGL_L7V+M5,M!>+BSZI>LL%TGGQ)602UZA3L[?(6IGNO 5UKEXY<-8^R*@LO> MH]43F!1H:<:_.$U]N 0S_. = *D4?>8**J\%RB*W-F!N1!-;.$02XUH$B=- M&,H>'=U*PF'QS2*PY8J]9WMHJ-G('LPXZM"S-_> 0BK/OL,)>Z'>YAPI:8#R MZL//'(LOY\5(!OYB'!M?$ MK?.LM+W!<32S=U[LVW&>_\+'5T'5-M)XIJ FZ.+J(^5UXZ:-!MHN3O=@D78E M'EMZG.!" -W7EB8\&2'!_-R+OU!+ P04 " #W@:E8X_N.)V $ # $@ M&0 'AL+W=O3\=L+?.,PCU'8ET4A/]U!3G;3BQL[08>LG0I]8 ] M':]("H\@OZSNN;JSFRB+K J,D81AZ>)=8DO9F[I4%K\EL%6[%TCGJ7/->% MV'-0<88=W-K![3KX1QR\VL$K$ZV0E6E=$TFF8\ZVB&MK%4U?E+4IO54V&=5M M?)1H14M4>B6UJ10Q=Y>/3D&B3)(U./GQ$ M'U!&T>'[AB52X%NZ (6A_ZVRJE)S-TE M=N4: ]X1?HX\?(I/ZQ.JLWDL,&Z!H&JU-YAZ6W M?O4V4W<4:^";? 2,&X MS/XNV3F$->CA. M&00?LD)%_!&S8@ V-8&^I! Y"F@H9]N?%OM,!-V04N\/@ MH@9<9 3WJUP"WW7[I$;X<0ABU)O=][KEZ]L$\3"^N,$7F_&M@*N6TG2W" GT MQQT4<^!_#H$T!M-J>"%6)(&)I>1. -^ -?WQ!QPZ/PTM#N\4["#O49/WZ+N6 MBE&OTD-+1=_*L%1@IY4+YW]8+.J@!VBB>-2!/& 5NF%T!/*>PN&W\@C]@V[T MAH(SFB7HLWY3310S3_1:CKU7M,.RN&U9W.^B6>V^WPVL_L)NTP;,'"_"1[K6 MZB4V"^8;B>;UT<38ZV+N6[E!=&2YPJV.8K.0OD TNLD4S_0XR177DB5E.4LS M,"]KYCE?S;EWBG98H5:[L5F\7^1<7X3#V(V[[>M;Q8Y_1 UQJ]78+-9O9%Q? MFG%7&X=LG#U6'@)N]1N_(.!&OMUSEH 0KV":<;97,^V=HAW6IMT[8//FX46F MQ0.K6QQW]UU#9E[@A$=:UTH\-FO\&[G6%W4\"G$7\\ &(8R.0'9;Y7?-RK_[ M$GR E=YMT_1472:,)EFN*7@KH3A%,\;54Z*^*3\QE43E82*=>=+7DNZ]HAV6 MJ-UIN.:=QMNZ6@?=_ZH[!J5A5=@%.[P( M )D* 9 >&PO=V]R:W-H965T])^?< M@^,[W#'^)%( B9[SC(J1D4I97)NF2%+(L;AB!5"ULV(\QU)-^=H4!0>\+)/R MS'0L*S!S3*@1#\NU&8^';",S0F'&D=CD.>9_;R%CNY%A&R\+]V2=2KU@QL," MKV$.\K&8<34S&Y0ER8$*PBCBL!H9-_;UV+9T0AGQ@\!.[(V1EK)@[$E/ILN1 M86E&D$$B-016CRV,(E+4ILY4:0K6-<\G5+E%Y,O[. M)"#;0Y=H#FMECT136OTY=)$OT72IULB*X$4&Z$8(D *=3T!BDHD+M?\XGZ#S MLPMTA@A%#RG;"$R78FA*Q4V_P4QJ'K<5#^<$CSO,KY!K?T*.Y7@MZ>/N] DD M3;I[F&ZJBC1E<9JR."6>=P*O17:;I@HD*$'T@=G&MC_PG7!H;O>YMX2Y7N0, MFK #CF[#T>WD^$4?!@([$.TUHKT^C*E _+V*A[YO14>^O(YR'=_RVVWQ&X9^MRUT M2Y0K^BSA3#F3I)1E;$U =#K4"?I>AWH".] ?-/J#/AP*7M7>#@)]] \<:HL* M0Z?=H;!A&'8RG'&6@!!O]Z83[KW>] 1VH#QJE$=]>!.]JKH?1K9_Y$U+5!!Y M)[P9- P'G0S'C!>,8W4IO=Q'7<9T8KW7F)[ #F3;UO][V.K#FAIE_RX9^)%U M9$U+E!.%MG7DC;G7-^BF35W":T(%RF"E\JRK4)G+JSZHFDA6E*W$@DG5F)3# M5/6.P'6 VE\QU4[4$]V=--UH_ ]02P,$% @ ]X&I6!V&<8^[ @ TP< M !D !X;"]W;W)K&ULK55=;]HP%/TK5UDU==+: M? *E@T@%6JT/156![6':@R$78C6QF>U ]^]G.VD&-$5;U9?$=NXY/N?:N;>W MY>)1IH@*GO*,R;Z3*K6^=%VY2#$G\IROD>DO2RYRHO14K%RY%D@2"\HS-_"\ MMIL3RIRX9]?N1=SCA*6[DS!N-DSOFCF=PF?<H",WD M)XV9349P>O()3H RF*:\D(0ELN@9_CL\/"(GK',?6K[H%;XJKTV)*8%M M"S0_XB8.NA=&\V97[LNHT._ZW3IJ3U54JXJ.JIJ-;Z?7(YA,KZ;7DR9M1^&F MZES*-5E@W]%E1:+8H!-__."WO2]-&7\GLCVGK=IIZZWY+X&MGB6S/:Z?VVGGK"71> MW&V_&T:')_ R*O N@L,_P-VIC[I:K6S;D+#@!5-E]:A7Z\YT90ORP?I =ZRR MP?RE*=N=K@TKRB1DN-24WGE'WPI1MI!RHOC:5N$Y5[IDVF&JNRX*$Z"_+[FN MQ-7$;%#W\?@/4$L#!!0 ( />!J5B &?CAE@( %0' 9 >&PO=V]R M:W-H965T9L/3!LXV7AGJ:9U MF&%0DQ0CEK)IP-3,[EH066 K* M2N"X&!A#^W+DZ_@ZX ?%M=@8@W8R9^Q!3VZ2@6%I09AC+#4#4:\5CC#/-9&2 M\=AR&MTG-7!S_,+^I?:NO,R)P!'+?])$9@/CW( $%V29RWNV_H:MG[[FBUDN MZB>LVUC+@'@I)"M:L%)0T+)YDZMHQ:8'=6YJM')#2UW%2'*U2Q5.AG=,(M@>]"#"5%5'PDW9G V=Y!Y\ M9V7:RU6F$Q@*@5+ _!F^(DLYJ3(:DQR&ZO# \1@EH;DX49!9-(;CHQ,X EK" M-&-+0!R+:\^IU7_T#E\-\<>\?Q+UZ5XVV0?W[^JAKF1L_3 M]XWJ%BDM!>2X4"CK]$SE@S<]O)E(5M5M<,ZD:JKU,%/7'G(=H/873+7"=J([ M:W>1AG\ 4$L#!!0 ( />!J5@QADL&.0, .H2 - >&POG%_OVDPHX M):&7M/\$TK,.SFLQC#K>I:Z6'ULBYWB,N9W[%?WZ\1-)M$4>3W7@T6/EMY)@ M4CF'=4'&PTS)MBX1<0;+3G,6W%$Q(A,J^%1S\,IHSL7:F7M@F"FA=&!L0]AP M7;"4]P[NNAGT2LV3WZP+JW"NZ;K;ZY/6H;K9(%.E4Z:;,%VR,8V'@F4@1_/Y NY&%2& MQJC<#E).YTK22L/&HQY8VAD3XAH>I*_9#O 6K^N_L\ M9Y)I*K9%V]Y_R;O\;,71^;^27/U7V1?LU5B_'5^ZR/XAB(P/0>1!].3@Y8N, MDA>I,:S?WUN'A)TC0F,-X"@V(E_@8"?:H,%TR87ALIXM>)HR^>"D8.D-G=J# M_ Z_79^RC"Z%N6G $6G'GUG*EWG2K+J"C:A7M>-/D%XW;LZ!-A:7*5NQ=%)/ M]7Q:#0,[L%'K"QSVD(<\W@=831_K$"Q3O!.Q3/&]!L2_;^"1)/YJ8W' ZL"UCL0WQ\'>LKO M$T5054P;]@3C2))@"/2BOT?C&-F=&#[^^F!/210EB1\!S*\@BC $GD8-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO M8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 ( />!J5A])F)" M704 'DO / >&PO=V]R:V)O;VLN>&ULQ9I-;]LX$$#_"N%3]]"U]>DT M: JT2=,-T+1!$_2ZH"4ZYE8B79)*VO[Z'4GQ9I2&@[UX?+(IR=(39>K-#/GZ MWKIO*VN_B1]M8_S);!/"]G@^]]5&M=+_:;?*P)ZU=:T,T'2W<[]U2M9^HU1H MFWFZ6)3S5FHS>_-Z=ZXK-\<-&U05M#6PL=_P5:M[_[B_;XH[[?5*-SK\/)D- MWQLU$ZTVNM6_5'TR6\R$W]C[OZS3OZP)LKFNG&V:DUDR[OBJ7-#5;YNO>\@; MN?+#EB!77R2 G,S*!9QPK9T/PQ'#^24PWBDX>&QUP9[K)BAW)H/ZX&RWU>:V M/PWFP"=)"[,>"HXMK]3N/1%/=YU %S4A^Y8PPYW40_@^X,\A;9M= U7 MK\4[V4A3*3%TKA!ULAR)* + _7D])O$.22@%SN%_(3O,)%(EZ*3S)T M3NW^B^.!"/&(0#QB0$P!\;IK6^E^#D]9WQH-OY#G!I"22 M<%@DZ37ROMTV]J=2(Z^XZERUD1B3TDC"X9$DPYCOE%%K'<051+4XVJ:4DG(H M)>F=75]Z[G?'\W55Y*9BU[=LF%\;I63MPX M64,2*MXZ![(;XT3,2(DDW;-(4*@%P4UE.\A3 ?4*0MMJ^LY.*9^D'#Z)18F3 M##"EU))RJ.5)G"A>W$B@\']@2$HT*8=H8@'CM"\I\Z0,4DS)/RF&>)P'9<__,C/).QN&=Q\CL63Y*.1F+ED'-*)8N88DY). MQB&=WP1^IH+4C18#RVG:HQ)22<[0-EL4-!8],$E<4H[.8=V M?L>\$A5% 6*C@L]$Q)_R'\P)B4A0H."SU-)!];&).R4,%A(9Q*_A?#J1^A MPTXO* L5'!9"F ]?X-_IPS3)*"@+%1P6FF!>]DD11$JJG_'&F.2Z 0X+H?Q\ M^LSQ'&-!6:A@G>F!C\]= !@S%(D_*HQ)6:A@F?I!F.?=D @_/'J,25FH8)GZ MB54])J]WRD(%R]1/#!-'2"5EH9)EZB>&B2.DDK)0R5*)BV'B"*FD+%0>M"*' M(Z22LE#)4I&+81YA3,I")4M%+C+).ZEOEI2%2A8+129YIYCD^C46"T7*L%-, MRD(EBX5BU>*7&).R4,EBH5AO8@N5E(5*%@O%,+&%EI2%EH=<@#"QT)*RT')< M]3T<[-^\KF$,&E5_@DMXV%[)IKIRHO\8EYWE1;\X9-TUS2EL^VP^6EGO5H[O M5KV_^1=02P,$% @ ]X&I6+ % +TV @ '"H !H !X;"]?A)Q1JA 7'XQ^(2 QY=\:,=]=RJ[?5\6G\?#J:RJW3CV MO^JZK'?YV):[KL^G\Y%--QS;\;PSER\?O7Y M?R9VF\U^G7]WZS_'?!K_,;C^Z(;WLLMYK!:O[;#-XZJJ/P_7W:6^;-+=>7*U M>'Y;5I@_*"U1QB5!T@1K JT3@WD*@MZ#>0J"W MH-Y"H+>@WD*@MZ#>0J"WH-Y"H+>BWDJ@MZ+>2J"WHMY*H+=.7I80Z*VHMQ+H MK:BW$NBMJ+<2Z*VHMQ+HK:BW$NBMJ+<2Z&VHMQ'H;:BW$>AMJ+<1Z&VHMQ'H M;9.7W01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'H;ZFT$>COJ[01Z.^KM!'H[ZNT$ M>COJ[01Z.^KM!'K[Y&,E@=Z.>CN!WHYZ.X'>CGH[@=Z.>CN!WH%Z!X'>@7H' M@=Z!>@>!WH%Z!X'>@7H'@=Z!>@>!WC'YV81 [T"]@T#O0+V#0.] O8- [P;U M;@CT;E#OYB?U+N/7(9=KS_<:K_^35(_G<_/U\I?E]\[)3;C@7-]6E*>_4$L# M!!0 ( />!J5CART;(_0$ #TI 3 6T-O;G1E;G1?5'EP97-=+GAM M;,W:34[#,! %X*M4V:+&]6\!43; %EAP 9-,VZA);-D&RNUQ4D "004J$F_3 MJ+4];^*1OE7/[IX]Q>KSRM*%SJ;\-:R8M]7& MKHB)V6NZ)'^Y-3OF':??*# M\\1#*>G/A>BD)K]K_B>F$L?_'XT3+NF^H?9^7J? M7-B,\XAL?!Q^QQ]G_%[_EWT(D#XD2!\*I \-TH?_*>N];_BV?C?^:/'\!4$L! A0#% @ ]X&I6 =!36*! L0 ! M ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 " #W M@:E8L*(J8.\ K @ $0 @ &O 9&]C4')O<',O8V]R M92YX;6Q02P$"% ,4 " #W@:E8F5R<(Q & "<)P $P M@ '- 0 >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( />!J5B8@*U9 MT04 .L> 8 " @0X( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ ]X&I M6-E LG,) P "0H !@ ("!JA8 'AL+W=O!J5@05&#UE00 ,P0 8 M " @>D9 !X;"]W;W)K&PO=V]R:W-H M965T&UL4$L! A0#% @ ]X&I6-<..*>?" #CP !@ M ("!DR$ 'AL+W=O!J5@5C3$E20D $PJ 8 " @6@J !X;"]W M;W)K&PO=V]R:W-H965T&UL M4$L! A0#% @ ]X&I6#+1.FA'$0 52P !@ ("!OSH M 'AL+W=O!J5B'Y=/* M# 8 ,T- 9 " @3Q, !X;"]W;W)K&UL4$L! A0#% @ ]X&I6$KTQE1G! 20H !D M ("!?U( 'AL+W=O&PO=V]R:W-H965T M!J5C",>2#]@, #(( 9 M " @6-= !X;"]W;W)K&UL4$L! A0# M% @ ]X&I6(.XGL]4 @ .04 !D ("!D&$ 'AL+W=O M&PO=V]R:W-H965T!J5A%9:60;@, + ' 9 " @?EF M !X;"]W;W)K&UL4$L! A0#% @ ]X&I6)$G M<[[\! C L !D ("!GFH 'AL+W=O+H(% #+#0 &0 M @('1;P >&PO=V]R:W-H965T!J5C7'B,J( , -<& 9 " @8IU !X;"]W;W)K&UL4$L! A0#% @ ]X&I6+30[WYQ @ 8 4 !D M ("!X7@ 'AL+W=OP >&PO M=V]R:W-H965T!J5A7R:N*1 ( M /P$ 9 " @:2 !X;"]W;W)K&UL4$L! A0#% @ ]X&I6/[2,9J< @ IP< !D ("! M'X, 'AL+W=O&PO=V]R:W-H965T!J5AF *'$(0, - & 9 M " @>.8 !X;"]W;W)K&UL4$L! A0#% M @ ]X&I6#5*8(!#! - H !D ("!.YP 'AL+W=O=[,I$" !^!0 &0 M@('CK >&PO=V]R:W-H965T! MJ5C!?++S_ ( /L& 9 " @:NO !X;"]W;W)K&UL4$L! A0#% @ ]X&I6&'<_GD( P # < !D M ("!WK( 'AL+W=O&PO=V]R M:W-H965T!J5@5(G/M8P0 %D, M 9 " @:BZ !X;"]W;W)K&UL M4$L! A0#% @ ]X&I6,O>5TN\!0 C"$ !D ("!0K\ M 'AL+W=O&PO=V]R:W-H965T!J5A??8=0)@, $( 9 M " @03) !X;"]W;W)K&UL4$L! A0#% @ M]X&I6!OF-0);!0 \QP !D ("!8

&PO=V]R:W-H965T!J5BSV:L?N , %41 9 " @>?6 !X;"]W M;W)K&UL4$L! A0#% @ ]X&I6&.=+%F) @ M-@8 !D ("!UMH 'AL+W=O&PO=V]R:W-H965T!J5B- M_W6[R@, .L3 9 " @3G@ !X;"]W;W)K&UL4$L! A0#% @ ]X&I6 ](_"5O @ ? 4 !D M ("!.N0 'AL+W=O&PO=V]R:W-H M965T!J5CIO48P508 +HG 9 M " @<+I !X;"]W;W)K&UL4$L! M A0#% @ ]X&I6(Z'U9NG @ $08 !D ("!3O 'AL M+W=O&PO=V]R:W-H965T!J5B1(V>L,P( $H% 9 " M@4KV !X;"]W;W)K&UL4$L! A0#% @ ]X&I M6"31*RUN!0 $!X !D ("!M/@ 'AL+W=O&PO=V]R:W-H965T!J5BUZH0)&UL4$L! A0#% @ ]X&I6'L"=,&>!@ :S@ M !D ("!Q0,! 'AL+W=O&PO=V]R:W-H965T!J5BODG,& M> ( 4' 9 " @>\- 0!X;"]W;W)K&UL4$L! A0#% @ ]X&I6"YM. !]!P !T( !D M ("!GA ! 'AL+W=O&PO=V]R:W-H965T M!J5C7&UL4$L! A0# M% @ ]X&I6.HN]_AY$P 4$D! !D ("!K1X! 'AL+W=O M&PO=V]R:W-H965T!J5A55]!1V0( & ' 9 " @=&UL4$L! A0#% @ ]X&I6"'B MIA7U @ 8PH !D ("!YS@! 'AL+W=O&PO=V]R:W-H965T!J5C?LA>C"0, 'L* 9 " @4X^ 0!X;"]W;W)K&UL4$L! A0#% @ ]X&I6*!<,/"/! 81D !D M ("!CD$! 'AL+W=O&PO M=V]R:W-H965T!J5A&UL4$L! A0#% @ ]X&I6./[CB=@! P!( !D ("! M>DP! 'AL+W=O&PO=V]R:W-H965T!J5@=AG&/NP( -,' 9 M " @3=4 0!X;"]W;W)K&UL4$L! A0#% M @ ]X&I6( 9^.&6 @ 5 < !D ("!*5&PO! MJ5B7BKL

!J5A])F)"704 'DO / " 4-> 0!X M;"]W;W)K8F]O:RYX;6Q02P$"% ,4 " #W@:E8L 4 O38" <*@ &@ M @ '-8P$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$" M% ,4 " #W@:E8X XML 84 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 85 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 87 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.1.u1 html 233 372 1 false 96 0 false 9 false false R1.htm 000 - Document - Document And Entity Information Sheet http://www.intest.com/20240331/role/statement-document-and-entity-information Document And Entity Information Cover 1 false false R2.htm 001 - Statement - Consolidated Balance Sheets (Current Period Unaudited) Sheet http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited Consolidated Balance Sheets (Current Period Unaudited) Statements 2 false false R3.htm 002 - Statement - Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) Sheet http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) Statements 3 false false R4.htm 003 - Statement - Consolidated Statements of Operations (Unaudited) Sheet http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited Consolidated Statements of Operations (Unaudited) Statements 4 false false R5.htm 004 - Statement - Consolidated Statements of Comprehensive Earnings (Unaudited) Sheet http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited Consolidated Statements of Comprehensive Earnings (Unaudited) Statements 5 false false R6.htm 005 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited) Sheet http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited- Consolidated Statements of Stockholders' Equity (Unaudited) Statements 6 false false R7.htm 006 - Statement - Consolidated Statements of Cash Flows (Unaudited) Sheet http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited Consolidated Statements of Cash Flows (Unaudited) Statements 7 false false R8.htm 007 - Disclosure - Note 1 - Nature of Operations Sheet http://www.intest.com/20240331/role/statement-note-1-nature-of-operations Note 1 - Nature of Operations Notes 8 false false R9.htm 008 - Disclosure - Note 2 - Summary of Significant Accounting Policies Sheet http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies Note 2 - Summary of Significant Accounting Policies Notes 9 false false R10.htm 009 - Disclosure - Note 3 - Acquisition Sheet http://www.intest.com/20240331/role/statement-note-3-acquisition- Note 3 - Acquisition Notes 10 false false R11.htm 010 - Disclosure - Note 4 - Fair Value Measurements Sheet http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements Note 4 - Fair Value Measurements Notes 11 false false R12.htm 011 - Disclosure - Note 5 - Goodwill and Intangible Assets Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets- Note 5 - Goodwill and Intangible Assets Notes 12 false false R13.htm 012 - Disclosure - Note 6 - Revenue From Contracts With Customers Sheet http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers Note 6 - Revenue From Contracts With Customers Notes 13 false false R14.htm 013 - Disclosure - Note 7 - Major Customers Sheet http://www.intest.com/20240331/role/statement-note-7-major-customers Note 7 - Major Customers Notes 14 false false R15.htm 014 - Disclosure - Note 8 - Inventories Sheet http://www.intest.com/20240331/role/statement-note-8-inventories Note 8 - Inventories Notes 15 false false R16.htm 015 - Disclosure - Note 9 - Leases Sheet http://www.intest.com/20240331/role/statement-note-9-leases Note 9 - Leases Notes 16 false false R17.htm 016 - Disclosure - Note 10 - Debt Sheet http://www.intest.com/20240331/role/statement-note-10-debt Note 10 - Debt Notes 17 false false R18.htm 017 - Disclosure - Note 11 - Stock-based Compensation Plan Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan Note 11 - Stock-based Compensation Plan Notes 18 false false R19.htm 018 - Disclosure - Note 12 - Employee Stock Purchase Plan Sheet http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan Note 12 - Employee Stock Purchase Plan Notes 19 false false R20.htm 019 - Disclosure - Note 13 - Employee Benefit Plans Sheet http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans Note 13 - Employee Benefit Plans Notes 20 false false R21.htm 020 - Disclosure - Note 14 - Segment Information Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information Note 14 - Segment Information Notes 21 false false R22.htm 021 - Disclosure - Note 15 - Subsequent Event Sheet http://www.intest.com/20240331/role/statement-note-15-subsequent-event Note 15 - Subsequent Event Notes 22 false false R23.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 23 false false R24.htm 995468 - Disclosure - Significant Accounting Policies (Policies) Sheet http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies Significant Accounting Policies (Policies) Policies http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies 24 false false R25.htm 995469 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Tables) Sheet http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables Note 2 - Summary of Significant Accounting Policies (Tables) Tables http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies 25 false false R26.htm 995470 - Disclosure - Note 3 - Acquisition (Tables) Sheet http://www.intest.com/20240331/role/statement-note-3-acquisition-tables Note 3 - Acquisition (Tables) Tables http://www.intest.com/20240331/role/statement-note-3-acquisition- 26 false false R27.htm 995471 - Disclosure - Note 4 - Fair Value Measurements (Tables) Sheet http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables Note 4 - Fair Value Measurements (Tables) Tables http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements 27 false false R28.htm 995472 - Disclosure - Note 5 - Goodwill and Intangible Assets (Tables) Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables Note 5 - Goodwill and Intangible Assets (Tables) Tables http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets- 28 false false R29.htm 995473 - Disclosure - Note 6 - Revenue From Contracts With Customers (Tables) Sheet http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables Note 6 - Revenue From Contracts With Customers (Tables) Tables http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers 29 false false R30.htm 995474 - Disclosure - Note 8 - Inventories (Tables) Sheet http://www.intest.com/20240331/role/statement-note-8-inventories-tables Note 8 - Inventories (Tables) Tables http://www.intest.com/20240331/role/statement-note-8-inventories 30 false false R31.htm 995475 - Disclosure - Note 9 - Leases (Tables) Sheet http://www.intest.com/20240331/role/statement-note-9-leases-tables Note 9 - Leases (Tables) Tables http://www.intest.com/20240331/role/statement-note-9-leases 31 false false R32.htm 995476 - Disclosure - Note 10 - Debt (Tables) Sheet http://www.intest.com/20240331/role/statement-note-10-debt-tables Note 10 - Debt (Tables) Tables http://www.intest.com/20240331/role/statement-note-10-debt 32 false false R33.htm 995477 - Disclosure - Note 11 - Stock-based Compensation Plan (Tables) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables Note 11 - Stock-based Compensation Plan (Tables) Tables http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan 33 false false R34.htm 995478 - Disclosure - Note 14 - Segment Information (Tables) Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information-tables Note 14 - Segment Information (Tables) Tables http://www.intest.com/20240331/role/statement-note-14-segment-information 34 false false R35.htm 995479 - Disclosure - Note 1 - Nature of Operations (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual Note 1 - Nature of Operations (Details Textual) Details http://www.intest.com/20240331/role/statement-note-1-nature-of-operations 35 false false R36.htm 995480 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual Note 2 - Summary of Significant Accounting Policies (Details Textual) Details http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables 36 false false R37.htm 995481 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details) Sheet http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details) Details 37 false false R38.htm 995482 - Disclosure - Note 3 - Acquisition (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual Note 3 - Acquisition (Details Textual) Details http://www.intest.com/20240331/role/statement-note-3-acquisition-tables 38 false false R39.htm 995483 - Disclosure - Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details) Sheet http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details) Details 39 false false R40.htm 995484 - Disclosure - Note 3 - Acquisition - Intangible Assets (Details) Sheet http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details Note 3 - Acquisition - Intangible Assets (Details) Details 40 false false R41.htm 995485 - Disclosure - Note 3 - Acquisition - Proforma Information (Details) Sheet http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details Note 3 - Acquisition - Proforma Information (Details) Details 41 false false R42.htm 995486 - Disclosure - Note 4 - Fair Value Measurements (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual Note 4 - Fair Value Measurements (Details Textual) Details http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables 42 false false R43.htm 995487 - Disclosure - Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details) Sheet http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details) Details 43 false false R44.htm 995488 - Disclosure - Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details) Sheet http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details) Details 44 false false R45.htm 995489 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details) Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details) Details 45 false false R46.htm 995490 - Disclosure - Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details) Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details) Details 46 false false R47.htm 995491 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details) Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details) Details 47 false false R48.htm 995492 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details) Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details) Details 48 false false R49.htm 995493 - Disclosure - Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details) Sheet http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details) Details 49 false false R50.htm 995494 - Disclosure - Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details) Sheet http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details) Details 50 false false R51.htm 995495 - Disclosure - Note 7 - Major Customers (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual Note 7 - Major Customers (Details Textual) Details http://www.intest.com/20240331/role/statement-note-7-major-customers 51 false false R52.htm 995496 - Disclosure - Note 8 - Inventories - Inventories (Details) Sheet http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details Note 8 - Inventories - Inventories (Details) Details 52 false false R53.htm 995497 - Disclosure - Note 9 - Leases (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-9-leases-details-textual Note 9 - Leases (Details Textual) Details http://www.intest.com/20240331/role/statement-note-9-leases-tables 53 false false R54.htm 995498 - Disclosure - Note 9 - Leases - Lease Costs (Details) Sheet http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details Note 9 - Leases - Lease Costs (Details) Details 54 false false R55.htm 995499 - Disclosure - Note 9 - Leases - Maturities of Lease Liabilities (Details) Sheet http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details Note 9 - Leases - Maturities of Lease Liabilities (Details) Details 55 false false R56.htm 995500 - Disclosure - Note 10 - Debt (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-10-debt-details-textual Note 10 - Debt (Details Textual) Details http://www.intest.com/20240331/role/statement-note-10-debt-tables 56 false false R57.htm 995501 - Disclosure - Note 10 - Debt - Outstanding Letters of Credit (Details) Sheet http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details Note 10 - Debt - Outstanding Letters of Credit (Details) Details 57 false false R58.htm 995502 - Disclosure - Note 10 - Debt - Future Maturities of Long-term Debt (Details) Sheet http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details Note 10 - Debt - Future Maturities of Long-term Debt (Details) Details 58 false false R59.htm 995503 - Disclosure - Note 11 - Stock-based Compensation Plan (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual Note 11 - Stock-based Compensation Plan (Details Textual) Details http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables 59 false false R60.htm 995504 - Disclosure - Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details) Details 60 false false R61.htm 995505 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details) Details 61 false false R62.htm 995506 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) Details 62 false false R63.htm 995507 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals) Details 63 false false R64.htm 995508 - Disclosure - Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details) Sheet http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details) Details 64 false false R65.htm 995509 - Disclosure - Note 12 - Employee Stock Purchase Plan (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual Note 12 - Employee Stock Purchase Plan (Details Textual) Details http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan 65 false false R66.htm 995510 - Disclosure - Note 13 - Employee Benefit Plans (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual Note 13 - Employee Benefit Plans (Details Textual) Details http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans 66 false false R67.htm 995511 - Disclosure - Note 14 - Segment Information (Details Textual) Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual Note 14 - Segment Information (Details Textual) Details http://www.intest.com/20240331/role/statement-note-14-segment-information-tables 67 false false R68.htm 995512 - Disclosure - Note 14 - Segment Information - Segment Information (Details) Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details Note 14 - Segment Information - Segment Information (Details) Details 68 false false R69.htm 995513 - Disclosure - Note 14 - Segment Information - Identifiable Assets (Details) Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details Note 14 - Segment Information - Identifiable Assets (Details) Details 69 false false R70.htm 995514 - Disclosure - Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details) Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details) Details 70 false false R71.htm 995515 - Disclosure - Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details) Sheet http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details) Details 71 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 51 fact(s) appearing in ix:hidden were eligible for transformation: dei:EntityRegistrantName, ecd:NonRule10b51ArrAdoptedFlag, ecd:NonRule10b51ArrTrmntdFlag, ecd:Rule10b51ArrAdoptedFlag, ecd:Rule10b51ArrTrmntdFlag, intt:DebtInstrumentDrawPeriod, intt:DefinedContributionPlanEmployerMatchingContributionVestingPeriod, intt:NumberOfMajorCustomers, us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent, us-gaap:CommonStockParOrStatedValuePerShare, us-gaap:CommonStockSharesAuthorized, us-gaap:CommonStockSharesIssued, us-gaap:DebtInstrumentTerm, us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount, us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount, us-gaap:IncreaseDecreaseInOperatingLeaseLiability, us-gaap:LeaseExpirationDate1, us-gaap:LesseeOperatingLeaseTermOfContract, us-gaap:LineOfCredit, us-gaap:LineOfCreditFacilityExpirationDate1, us-gaap:LineOfCreditFacilityInitiationDate1, us-gaap:NumberOfOperatingSegments, us-gaap:NumberOfReportableSegments, us-gaap:OperatingLeaseLiability, us-gaap:PreferredStockParOrStatedValuePerShare, us-gaap:PreferredStockSharesAuthorized, us-gaap:PreferredStockSharesIssued, us-gaap:PreferredStockSharesOutstanding, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber, us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod, us-gaap:TreasuryStockCommonShares - intt20240331_10q.htm 8, 13, 14, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64 intt-20240331.xsd intt-20240331_cal.xml intt-20240331_def.xml intt-20240331_lab.xml intt-20240331_pre.xml intt20240331_10q.htm http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 true true JSON 90 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "intt20240331_10q.htm": { "nsprefix": "intt", "nsuri": "http://www.intest.com/20240331", "dts": { "schema": { "local": [ "intt-20240331.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd", "https://xbrl.sec.gov/country/2024/country-2024.xsd", "https://xbrl.sec.gov/currency/2024/currency-2024.xsd", "https://xbrl.sec.gov/dei/2024/dei-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd", "https://xbrl.sec.gov/exch/2024/exch-2024.xsd", "https://xbrl.sec.gov/naics/2024/naics-2024.xsd", "https://xbrl.sec.gov/sic/2024/sic-2024.xsd", "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" ] }, "calculationLink": { "local": [ "intt-20240331_cal.xml" ] }, "definitionLink": { "local": [ "intt-20240331_def.xml" ] }, "labelLink": { "local": [ "intt-20240331_lab.xml" ] }, "presentationLink": { "local": [ "intt-20240331_pre.xml" ] }, "inline": { "local": [ "intt20240331_10q.htm" ] } }, "keyStandard": 337, "keyCustom": 35, "axisStandard": 33, "axisCustom": 0, "memberStandard": 38, "memberCustom": 55, "hidden": { "total": 58, "http://www.intest.com/20240331": 4, "http://fasb.org/us-gaap/2024": 44, "http://xbrl.sec.gov/dei/2024": 6, "http://xbrl.sec.gov/ecd/2024": 4 }, "contextCount": 233, "entityCount": 1, "segmentCount": 96, "elementCount": 598, "unitCount": 9, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 825, "http://xbrl.sec.gov/dei/2024": 29, "http://xbrl.sec.gov/ecd/2024": 5 }, "report": { "R1": { "role": "http://www.intest.com/20240331/role/statement-document-and-entity-information", "longName": "000 - Document - Document And Entity Information", "shortName": "Document And Entity Information", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "b", "p", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "b", "p", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "longName": "001 - Statement - Consolidated Balance Sheets (Current Period Unaudited)", "shortName": "Consolidated Balance Sheets (Current Period Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals", "longName": "002 - Statement - Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)", "shortName": "Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": null, "uniqueAnchor": null }, "R4": { "role": "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "longName": "003 - Statement - Consolidated Statements of Operations (Unaudited)", "shortName": "Consolidated Statements of Operations (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:CostOfRevenue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R5": { "role": "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited", "longName": "004 - Statement - Consolidated Statements of Comprehensive Earnings (Unaudited)", "shortName": "Consolidated Statements of Comprehensive Earnings (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R6": { "role": "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-", "longName": "005 - Statement - Consolidated Statements of Stockholders' Equity (Unaudited)", "shortName": "Consolidated Statements of Stockholders' Equity (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember", "name": "us-gaap:SharesOutstanding", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2022-12-31_StatementEquityComponentsAxis-CommonStockMember", "name": "us-gaap:SharesOutstanding", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "longName": "006 - Statement - Consolidated Statements of Cash Flows (Unaudited)", "shortName": "Consolidated Statements of Cash Flows (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:NetIncomeLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R8": { "role": "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "longName": "007 - Disclosure - Note 1 - Nature of Operations", "shortName": "Note 1 - Nature of Operations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "8", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:NatureOfOperations", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:NatureOfOperations", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "longName": "008 - Disclosure - Note 2 - Summary of Significant Accounting Policies", "shortName": "Note 2 - Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "longName": "009 - Disclosure - Note 3 - Acquisition", "shortName": "Note 3 - Acquisition", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "longName": "010 - Disclosure - Note 4 - Fair Value Measurements", "shortName": "Note 4 - Fair Value Measurements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-", "longName": "011 - Disclosure - Note 5 - Goodwill and Intangible Assets", "shortName": "Note 5 - Goodwill and Intangible Assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers", "longName": "012 - Disclosure - Note 6 - Revenue From Contracts With Customers", "shortName": "Note 6 - Revenue From Contracts With Customers", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.intest.com/20240331/role/statement-note-7-major-customers", "longName": "013 - Disclosure - Note 7 - Major Customers", "shortName": "Note 7 - Major Customers", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ConcentrationRiskDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.intest.com/20240331/role/statement-note-8-inventories", "longName": "014 - Disclosure - Note 8 - Inventories", "shortName": "Note 8 - Inventories", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.intest.com/20240331/role/statement-note-9-leases", "longName": "015 - Disclosure - Note 9 - Leases", "shortName": "Note 9 - Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.intest.com/20240331/role/statement-note-10-debt", "longName": "016 - Disclosure - Note 10 - Debt", "shortName": "Note 10 - Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "longName": "017 - Disclosure - Note 11 - Stock-based Compensation Plan", "shortName": "Note 11 - Stock-based Compensation Plan", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "longName": "018 - Disclosure - Note 12 - Employee Stock Purchase Plan", "shortName": "Note 12 - Employee Stock Purchase Plan", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:EmployeeStockPurchasePlanTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:EmployeeStockPurchasePlanTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "longName": "019 - Disclosure - Note 13 - Employee Benefit Plans", "shortName": "Note 13 - Employee Benefit Plans", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information", "longName": "020 - Disclosure - Note 14 - Segment Information", "shortName": "Note 14 - Segment Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.intest.com/20240331/role/statement-note-15-subsequent-event", "longName": "021 - Disclosure - Note 15 - Subsequent Event", "shortName": "Note 15 - Subsequent Event", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R23": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "ecd:MtrlTermsOfTrdArrTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "ecd:MtrlTermsOfTrdArrTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies", "longName": "995468 - Disclosure - Significant Accounting Policies (Policies)", "shortName": "Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "24", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:BasisOfPresentationAndUseOfEstimatesPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:BasisOfPresentationAndUseOfEstimatesPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables", "longName": "995469 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Tables)", "shortName": "Note 2 - Summary of Significant Accounting Policies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerSharePolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:EarningsPerSharePolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables", "longName": "995470 - Disclosure - Note 3 - Acquisition (Tables)", "shortName": "Note 3 - Acquisition (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables", "longName": "995471 - Disclosure - Note 4 - Fair Value Measurements (Tables)", "shortName": "Note 4 - Fair Value Measurements (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables", "longName": "995472 - Disclosure - Note 5 - Goodwill and Intangible Assets (Tables)", "shortName": "Note 5 - Goodwill and Intangible Assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:ScheduleOfChangesInGoodwillTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:ScheduleOfChangesInGoodwillTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables", "longName": "995473 - Disclosure - Note 6 - Revenue From Contracts With Customers (Tables)", "shortName": "Note 6 - Revenue From Contracts With Customers (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.intest.com/20240331/role/statement-note-8-inventories-tables", "longName": "995474 - Disclosure - Note 8 - Inventories (Tables)", "shortName": "Note 8 - Inventories (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.intest.com/20240331/role/statement-note-9-leases-tables", "longName": "995475 - Disclosure - Note 9 - Leases (Tables)", "shortName": "Note 9 - Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.intest.com/20240331/role/statement-note-10-debt-tables", "longName": "995476 - Disclosure - Note 10 - Debt (Tables)", "shortName": "Note 10 - Debt (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:ScheduleOfOutstandingLettersOfCreditTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "intt:ScheduleOfOutstandingLettersOfCreditTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables", "longName": "995477 - Disclosure - Note 11 - Stock-based Compensation Plan (Tables)", "shortName": "Note 11 - Stock-based Compensation Plan (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "longName": "995478 - Disclosure - Note 14 - Segment Information (Tables)", "shortName": "Note 14 - Segment Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "longName": "995479 - Disclosure - Note 1 - Nature of Operations (Details Textual)", "shortName": "Note 1 - Nature of Operations (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:NumberOfOperatingSegments", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:NatureOfOperations", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2023-05-11_2023-05-11_SubsidiarySaleOfStockAxis-AttheMarketIssuanceSalesAgreementMember", "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:NatureOfOperations", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R36": { "role": "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "longName": "995480 - Disclosure - Note 2 - Summary of Significant Accounting Policies (Details Textual)", "shortName": "Note 2 - Summary of Significant Accounting Policies (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:InventoryWriteDown", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "intt:DeferredGrantProceeds", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "intt:ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceivedPolicyPolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R37": { "role": "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details", "longName": "995481 - Disclosure - Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details)", "shortName": "Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "us-gaap:EarningsPerSharePolicyTextBlock", "us-gaap:SignificantAccountingPoliciesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R38": { "role": "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "longName": "995482 - Disclosure - Note 3 - Acquisition (Details Textual)", "shortName": "Note 3 - Acquisition (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "d_2024-03-14_2024-03-31_ConsolidatedEntitiesAxis-AlfamationMember", "name": "us-gaap:Revenues", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-03-14_2024-03-31_ConsolidatedEntitiesAxis-AlfamationMember", "name": "us-gaap:Revenues", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "longName": "995483 - Disclosure - Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details)", "shortName": "Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:Goodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2024-03-12_BusinessAcquisitionAxis-AlfamationMember", "name": "us-gaap:Goodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R40": { "role": "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "longName": "995484 - Disclosure - Note 3 - Acquisition - Intangible Assets (Details)", "shortName": "Note 3 - Acquisition - Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "d_2024-03-12_2024-03-12_BusinessAcquisitionAxis-AlfamationMember", "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-03-12_2024-03-12_BusinessAcquisitionAxis-AlfamationMember", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R41": { "role": "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "longName": "995485 - Disclosure - Note 3 - Acquisition - Proforma Information (Details)", "shortName": "Note 3 - Acquisition - Proforma Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31_BusinessAcquisitionAxis-AlfamationMember", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31_BusinessAcquisitionAxis-AlfamationMember", "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "longName": "995486 - Disclosure - Note 4 - Fair Value Measurements (Details Textual)", "shortName": "Note 4 - Fair Value Measurements (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "i_2024-03-31_BalanceSheetLocationAxis-OtherCurrentLiabilitiesMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis-FairValueMeasurementsRecurringMember", "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31_BalanceSheetLocationAxis-OtherCurrentLiabilitiesMember_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis-FairValueMeasurementsRecurringMember", "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityCurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "longName": "995487 - Disclosure - Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details)", "shortName": "Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "i_2024-03-31_DerivativeInstrumentRiskAxis-InterestRateSwapMember", "name": "us-gaap:DerivativeAssets", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31_BusinessAcquisitionAxis-AcculogicMember", "name": "us-gaap:BusinessCombinationContingentConsiderationLiability", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R44": { "role": "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details", "longName": "995488 - Disclosure - Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details)", "shortName": "Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "i_2023-12-31_FairValueByLiabilityClassAxis-ContingentConsiderationLiabilitiesMember", "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-31_FairValueByLiabilityClassAxis-ContingentConsiderationLiabilitiesMember", "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "longName": "995489 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details)", "shortName": "Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "i_2023-12-31", "name": "us-gaap:Goodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "intt:ScheduleOfChangesInGoodwillTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R46": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details", "longName": "995490 - Disclosure - Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details)", "shortName": "Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:Goodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "ix:continuation", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R47": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "longName": "995491 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details)", "shortName": "Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "i_2023-12-31", "name": "us-gaap:IndefiniteLivedIntangibleAssetsExcludingGoodwill", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R48": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "longName": "995492 - Disclosure - Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details)", "shortName": "Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "i_2023-12-31", "name": "us-gaap:FiniteLivedIntangibleAssetsNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R49": { "role": "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details", "longName": "995493 - Disclosure - Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details)", "shortName": "Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "longName": "995494 - Disclosure - Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details)", "shortName": "Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31_EquitySecuritiesByIndustryAxis-SemiconductorMarketMember", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R51": { "role": "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual", "longName": "995495 - Disclosure - Note 7 - Major Customers (Details Textual)", "shortName": "Note 7 - Major Customers (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-TexasInstrumentsIncorporatedMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-TexasInstrumentsIncorporatedMember", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "2", "ancestors": [ "p", "us-gaap:ConcentrationRiskDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details", "longName": "995496 - Disclosure - Note 8 - Inventories - Inventories (Details)", "shortName": "Note 8 - Inventories - Inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual", "longName": "995497 - Disclosure - Note 9 - Leases (Details Textual)", "shortName": "Note 9 - Leases (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details", "longName": "995498 - Disclosure - Note 9 - Leases - Lease Costs (Details)", "shortName": "Note 9 - Leases - Lease Costs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:OperatingLeaseCost", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LeaseCostTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:OperatingLeaseCost", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LeaseCostTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details", "longName": "995499 - Disclosure - Note 9 - Leases - Maturities of Lease Liabilities (Details)", "shortName": "Note 9 - Leases - Maturities of Lease Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "us-gaap:LesseeOperatingLeasesTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "longName": "995500 - Disclosure - Note 10 - Debt (Details Textual)", "shortName": "Note 10 - Debt (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:InterestExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-4", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2022-09-20", "name": "intt:DebtInstrumentCovenantRatioOfConsolidatedFundedDebtToConsolidatedEbitda", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R57": { "role": "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details", "longName": "995501 - Disclosure - Note 10 - Debt - Outstanding Letters of Credit (Details)", "shortName": "Note 10 - Debt - Outstanding Letters of Credit (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "i_2024-03-31_CreditFacilityAxis-LetterOfCreditMember", "name": "us-gaap:LettersOfCreditOutstandingAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "td", "tr", "tbody", "table", "intt:ScheduleOfOutstandingLettersOfCreditTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31_CreditFacilityAxis-LetterOfCreditMember", "name": "us-gaap:LettersOfCreditOutstandingAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-5", "ancestors": [ "td", "tr", "tbody", "table", "intt:ScheduleOfOutstandingLettersOfCreditTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "longName": "995502 - Disclosure - Note 10 - Debt - Future Maturities of Long-term Debt (Details)", "shortName": "Note 10 - Debt - Future Maturities of Long-term Debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "longName": "995503 - Disclosure - Note 11 - Stock-based Compensation Plan (Details Textual)", "shortName": "Note 11 - Stock-based Compensation Plan (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "longName": "995504 - Disclosure - Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details)", "shortName": "Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31_AwardTypeAxis-RestrictedStockMember", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31_AwardTypeAxis-RestrictedStockMember", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "longName": "995505 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details)", "shortName": "Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31_AwardTypeAxis-EmployeeStockOptionMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31_AwardTypeAxis-EmployeeStockOptionMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "unitRef": "Pure", "xsiNil": "false", "lang": null, "decimals": "4", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R62": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details", "longName": "995506 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details)", "shortName": "Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "i_2023-12-31", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-31", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R63": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals", "longName": "995507 - Disclosure - Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals)", "shortName": "Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "parenthetical", "menuCat": "Details", "order": "63", "firstAnchor": null, "uniqueAnchor": null }, "R64": { "role": "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details", "longName": "995508 - Disclosure - Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details)", "shortName": "Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "i_2023-12-31_AwardTypeAxis-RestrictedStockMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:NonvestedRestrictedStockSharesActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2023-12-31_AwardTypeAxis-RestrictedStockMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:NonvestedRestrictedStockSharesActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R65": { "role": "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual", "longName": "995509 - Disclosure - Note 12 - Employee Stock Purchase Plan (Details Textual)", "shortName": "Note 12 - Employee Stock Purchase Plan (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2021-06-23_PlanNameAxis-EmployeeStockPurchasePlanMember", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "unitRef": "Share", "xsiNil": "false", "lang": null, "decimals": "INF", "ancestors": [ "p", "intt:EmployeeStockPurchasePlanTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R66": { "role": "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual", "longName": "995510 - Disclosure - Note 13 - Employee Benefit Plans (Details Textual)", "shortName": "Note 13 - Employee Benefit Plans (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:DeferredCompensationLiabilityClassifiedNoncurrent", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "p", "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true, "unique": true } }, "R67": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual", "longName": "995511 - Disclosure - Note 14 - Segment Information (Details Textual)", "shortName": "Note 14 - Segment Information (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": null, "uniqueAnchor": null }, "R68": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "longName": "995512 - Disclosure - Note 14 - Segment Information - Segment Information (Details)", "shortName": "Note 14 - Segment Information - Segment Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:DepreciationAndAmortization", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R69": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "longName": "995513 - Disclosure - Note 14 - Segment Information - Identifiable Assets (Details)", "shortName": "Note 14 - Segment Information - Identifiable Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "69", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:Assets", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31_StatementBusinessSegmentsAxis-ElectronicTestMember", "name": "us-gaap:Assets", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R70": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "longName": "995514 - Disclosure - Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details)", "shortName": "Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "70", "firstAnchor": { "contextRef": "d_2024-01-01_2024-03-31", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "d_2024-01-01_2024-03-31_StatementGeographicalAxis-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } }, "R71": { "role": "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "longName": "995515 - Disclosure - Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details)", "shortName": "Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "71", "firstAnchor": { "contextRef": "i_2024-03-31", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "first": true }, "uniqueAnchor": { "contextRef": "i_2024-03-31_StatementGeographicalAxis-US", "name": "us-gaap:PropertyPlantAndEquipmentNet", "unitRef": "USD", "xsiNil": "false", "lang": null, "decimals": "-3", "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LongLivedAssetsByGeographicAreasTableTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "intt20240331_10q.htm", "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountingPoliciesAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Accounts payable", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r71", "r805" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Trade accounts receivable, net of allowance for credit losses of $426 and $474, respectively", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r876" ] }, "us-gaap_AccruedProfessionalFeesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedProfessionalFeesCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Accrued professional fees", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r74" ] }, "us-gaap_AccruedSalesCommissionCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedSalesCommissionCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Accrued sales commissions", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for sales commissions. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r74", "r749" ] }, "intt_AcculogicMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AcculogicMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Acculogic [Member]", "documentation": "Represents Acculogic." } } }, "auth_ref": [] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "negatedLabel": "Less: accumulated depreciation", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r42", "r156", "r600" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Accumulated other comprehensive earnings", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r22", "r23", "r92", "r163", "r597", "r636", "r637" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r3", "r11", "r23", "r480", "r483", "r538", "r632", "r633", "r854", "r855", "r856", "r863", "r864", "r865", "r866" ] }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Useful life (Year)", "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r288", "r741" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Additional paid-in capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r84", "r805", "r1066" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Additional Paid-in Capital [Member]", "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders." } } }, "auth_ref": [ "r646", "r863", "r864", "r865", "r866", "r998", "r1067" ] }, "us-gaap_AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsNoncashItemsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net earnings to net cash provided by operating activities:" } } }, "auth_ref": [] }, "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation", "negatedLabel": "Shares surrendered to satisfy tax liability at vesting of stock-based awards", "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Amortization of deferred compensation related to stock-based awards", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r48", "r49", "r400" ] }, "intt_AggregateOfferingPriceOfStock": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AggregateOfferingPriceOfStock", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_AggregateOfferingPriceOfStock", "terseLabel": "Aggregate Offering Price of Stock", "documentation": "The aggregate value offering price of stock issued and sold." } } }, "auth_ref": [] }, "intt_AlfamationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AlfamationMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Alfamation [Member]", "documentation": "Relating to Alfamation." } } }, "auth_ref": [] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_AllocatedShareBasedCompensationExpense", "terseLabel": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r432", "r442" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Allowance for doubtful accounts", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r164", "r262", "r267" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs", "terseLabel": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance." } } }, "auth_ref": [ "r268" ] }, "intt_AmendedLoanAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AmendedLoanAgreementMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Amended Loan Agreement [Member]", "documentation": "Represents The Loan Agreement, As Amended by the Third Amendment, the \u201camended Loan Agreement." } } }, "auth_ref": [] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "AmendmentFlag", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_AmortizationOfIntangibleAssets", "negatedLabel": "Amortization", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r285", "r292", "r773" ] }, "intt_AnnualLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AnnualLeasePayments", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_AnnualLeasePayments", "terseLabel": "Annual Lease Payments", "documentation": "Represents the amount of annual lease payments." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "terseLabel": "Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period (in shares)", "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented." } } }, "auth_ref": [ "r218" ] }, "us-gaap_AreaOfRealEstateProperty": { "xbrltype": "areaItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AreaOfRealEstateProperty", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_AreaOfRealEstateProperty", "terseLabel": "Area of Real Estate Property (Square Foot)", "documentation": "Area of a real estate property." } } }, "auth_ref": [] }, "us-gaap_ArrangementsAndNonarrangementTransactionsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ArrangementsAndNonarrangementTransactionsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]", "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r471" ] }, "intt_AssetMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AssetMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables" ], "lang": { "en-us": { "role": { "label": "Asset [Member]", "documentation": "The information pertaining to a financial statement line item." } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_Assets", "terseLabel": "Identifiable Assets", "totalLabel": "Total assets", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r130", "r140", "r160", "r189", "r221", "r227", "r246", "r250", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r473", "r477", "r511", "r592", "r680", "r765", "r766", "r805", "r835", "r904", "r905", "r1021" ] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_AssetsCurrent", "totalLabel": "Total current assets", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r151", "r167", "r189", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r473", "r477", "r511", "r805", "r904", "r905", "r1021" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Current assets:" } } }, "auth_ref": [] }, "intt_AttheMarketIssuanceSalesAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AttheMarketIssuanceSalesAgreementMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "At-the-Market Issuance Sales Agreement [Member]", "documentation": "Represents At-the-Market Issuance Sales Agreement." } } }, "auth_ref": [] }, "intt_AutomobileLeasesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AutomobileLeasesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Automobile Leases [Member]", "documentation": "Information pertaining to automobile leases." } } }, "auth_ref": [] }, "intt_AutomotiveMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "AutomotiveMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Automotive [Member]", "documentation": "Represents Automotive." } } }, "auth_ref": [] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r403", "r404", "r405", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r427", "r428", "r429", "r430", "r431" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "Statement of Financial Position Location, Balance [Axis]", "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r306", "r1033", "r1034" ] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "Statement of Financial Position Location, Balance [Domain]", "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r63", "r65", "r306", "r1033", "r1034" ] }, "intt_BasisOfPresentationAndUseOfEstimatesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "BasisOfPresentationAndUseOfEstimatesPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Basis Of Presentation And Use Of Estimates [Policy Text Block]", "documentation": "Basis of presentation and use of estimates policy text block." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r286", "r287", "r288", "r289", "r290", "r465", "r786", "r787" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r51", "r52", "r286", "r287", "r288", "r289", "r290", "r465", "r786", "r787" ] }, "us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessAcquisitionEquityInterestsIssuedOrIssuableNumberOfSharesIssued", "terseLabel": "Business Acquisition, Equity Interest Issued or Issuable, Number of Shares (in shares)", "documentation": "Number of shares of equity interests issued or issuable to acquire entity." } } }, "auth_ref": [ "r126" ] }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Diluted earnings per share (in dollars per share)", "label": "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted", "documentation": "The pro forma diluted net income per share for a period as if the business combination or combinations had been completed at the beginning of a period." } } }, "auth_ref": [ "r847", "r848" ] }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionProFormaInformationTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables" ], "lang": { "en-us": { "role": { "label": "Business Acquisition, Pro Forma Information [Table Text Block]", "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate." } } }, "auth_ref": [ "r847", "r848" ] }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionsProFormaNetIncomeLoss", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Net earnings", "label": "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss", "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period." } } }, "auth_ref": [ "r463", "r464" ] }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionsProFormaRevenue", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenue", "label": "us-gaap_BusinessAcquisitionsProFormaRevenue", "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period." } } }, "auth_ref": [ "r463", "r464" ] }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationAcquisitionRelatedCosts", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationAcquisitionRelatedCosts", "terseLabel": "Business Combination, Acquisition Related Costs", "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities." } } }, "auth_ref": [ "r50" ] }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationConsiderationTransferred1", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationConsiderationTransferred1", "terseLabel": "Business Combination, Consideration Transferred", "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer." } } }, "auth_ref": [ "r0", "r1", "r10" ] }, "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationConsiderationTransferredEquityInterestsIssuedAndIssuable", "terseLabel": "Business Combination, Consideration Transferred, Equity Interests Issued and Issuable", "documentation": "Amount of equity interests of the acquirer, including instruments or interests issued or issuable in consideration for the business combination." } } }, "auth_ref": [ "r0", "r1" ] }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationContingentConsiderationLiability", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationContingentConsiderationLiability", "negatedLabel": "Contingent consideration liability", "documentation": "Amount of liability recognized arising from contingent consideration in a business combination." } } }, "auth_ref": [ "r59", "r125", "r468", "r491", "r492", "r493" ] }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationContingentConsiderationLiabilityCurrent", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationContingentConsiderationLiabilityCurrent", "terseLabel": "Business Combination, Contingent Consideration, Liability, Current", "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r59", "r125" ] }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Contingent consideration", "documentation": "Amount of liability recognized arising from contingent consideration in a business combination, expected to be settled beyond one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r59", "r125" ] }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-" ], "lang": { "en-us": { "role": { "label": "Business Combination Disclosure [Text Block]", "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable)." } } }, "auth_ref": [ "r118", "r466" ] }, "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred", "terseLabel": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred", "documentation": "This element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to items of consideration transferred in connection with a business combination for which the initial accounting was incomplete." } } }, "auth_ref": [ "r55" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Cash", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other current assets", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "documentation": "Amount of other assets expected to be realized or consumed before one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Trade accounts receivable", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Accounts payable", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "intt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued expenses", "label": "intt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities", "documentation": "Amount of accrued liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other current liabilities", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesOther", "documentation": "Amount of other liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 12.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred tax liability", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxLiabilities", "documentation": "Amount of deferred tax liability attributable to taxable temporary differences assumed at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Identifiable intangible assets", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Inventories", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "documentation": "The amount of inventory recognized as of the acquisition date." } } }, "auth_ref": [ "r53", "r54" ] }, "intt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilitiesDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilitiesDebt", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 11.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Debt (current and long-term)", "label": "intt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilitiesDebt", "terseLabel": "Business Combination, Recognized Identifiable Assets Acquired and Liabilities Assumed, Liabilities, Debt", "documentation": "Amount of debt obligations assumed in business combination." } } }, "auth_ref": [] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": -1.0, "order": 13.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other non-current liabilities", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesOther", "documentation": "Amount of other liabilities due after one year or the normal operating cycle, if longer, assumed at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other assets", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "documentation": "Amount of other assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Property and equipment", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date." } } }, "auth_ref": [ "r53", "r54" ] }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "totalLabel": "Total purchase price", "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed." } } }, "auth_ref": [ "r54" ] }, "us-gaap_BusinessCombinationsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationsPolicy", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Business Combinations Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for completed business combinations (purchase method, acquisition method or combination of entities under common control). This accounting policy may include a general discussion of the purchase method or acquisition method of accounting (including for example, the treatment accorded contingent consideration, the identification of assets and liabilities, the purchase price allocation process, how the fair values of acquired assets and liabilities are determined) and the entity's specific application thereof. An entity that acquires another entity in a leveraged buyout transaction generally discloses the accounting policy followed by the acquiring entity in determining the basis used to value its interest in the acquired entity, and the rationale for that accounting policy." } } }, "auth_ref": [ "r119", "r120", "r121", "r122" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Cash and cash equivalents", "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation." } } }, "auth_ref": [ "r27", "r154", "r747" ] }, "us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]", "documentation": "Entity's cash and cash equivalents accounting policy with respect to restricted balances. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits." } } }, "auth_ref": [ "r28", "r129" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "periodStartLabel": "Cash, cash equivalents and restricted cash at beginning of period", "periodEndLabel": "Cash, cash equivalents and restricted cash at end of period", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r27", "r102", "r186" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "totalLabel": "Net cash provided by (used in) all activities", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r2", "r102" ] }, "intt_ChiefExecutiveOfficerAndChiefFinancialOfficerMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ChiefExecutiveOfficerAndChiefFinancialOfficerMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Chief Executive Officer and Chief Financial Officer [Member]", "documentation": "Related to Chief Executive Officer and Chief Financial Officer." } } }, "auth_ref": [] }, "intt_ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Chief Executive Officer, Chief Financial Officer, and Division Presidents [Member]", "documentation": "Pertains to the CEO, CFO, and Division Presidents." } } }, "auth_ref": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CityAreaCode", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "intt_CityOfRochesterAndStateOfNewYorkMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "CityOfRochesterAndStateOfNewYorkMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "City of Rochester and State of New York [Member]", "documentation": "Represents information related to city of Rochester and state of New York." } } }, "auth_ref": [] }, "intt_CommissionFeePercentageOfGrossProceeds": { "xbrltype": "percentItemType", "nsuri": "http://www.intest.com/20240331", "localname": "CommissionFeePercentageOfGrossProceeds", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_CommissionFeePercentageOfGrossProceeds", "terseLabel": "Commission Fee, Percentage of Gross Proceeds", "documentation": "The percentage charged for the sales of shares." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Commitments and Contingencies", "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur." } } }, "auth_ref": [ "r80", "r133", "r594", "r667" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r823", "r824", "r825", "r827", "r828", "r829", "r832", "r863", "r864", "r866", "r998", "r1064", "r1067" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, par value (in dollars per share)", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r83" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, shares authorized (in shares)", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r83", "r668" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Common stock, shares issued (in shares)", "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury." } } }, "auth_ref": [ "r83" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Common stock, $0.01 par value; 20,000,000 shares authorized; 12,566,024 and 12,241,925 shares issued, respectively", "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r83", "r596", "r805" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_ComprehensiveIncomeNetOfTax", "totalLabel": "Comprehensive earnings", "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r24", "r173", "r175", "r181", "r587", "r606", "r607" ] }, "us-gaap_ComputerSoftwareIntangibleAssetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComputerSoftwareIntangibleAssetMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Computer Software, Intangible Asset [Member]", "documentation": "Collection of computer programs and related data that provide instructions to a computer, for example, but not limited to, application program, control module or operating system, that perform one or more particular functions or tasks." } } }, "auth_ref": [ "r741", "r746", "r883", "r884", "r885", "r886", "r888", "r890", "r893", "r894" ] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r36", "r37", "r69", "r70", "r257", "r728" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r36", "r37", "r69", "r70", "r257", "r639", "r728" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r36", "r37", "r69", "r70", "r257", "r728", "r846" ] }, "us-gaap_ConcentrationRiskDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Disclosure [Text Block]", "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date." } } }, "auth_ref": [ "r107" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ConcentrationRiskPercentage1", "terseLabel": "Concentration Risk, Percentage", "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division." } } }, "auth_ref": [ "r36", "r37", "r69", "r70", "r257" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Concentration Risk Type [Domain]", "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r36", "r37", "r69", "r70", "r257", "r728" ] }, "srt_ConsolidatedEntitiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidatedEntitiesAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "Consolidated Entities [Axis]" } } }, "auth_ref": [ "r193", "r473", "r474", "r477", "r478", "r540", "r733", "r903", "r906", "r907" ] }, "srt_ConsolidatedEntitiesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidatedEntitiesDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "Consolidated Entities [Domain]" } } }, "auth_ref": [ "r193", "r473", "r474", "r477", "r478", "r540", "r733", "r903", "r906", "r907" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r138", "r193", "r221", "r229", "r244", "r245", "r246", "r247", "r248", "r250", "r251", "r252", "r316", "r317", "r318", "r319", "r321", "r322", "r323", "r324", "r325", "r765", "r766", "r904", "r905" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r138", "r193", "r221", "r229", "r244", "r245", "r246", "r247", "r248", "r250", "r251", "r252", "r316", "r317", "r318", "r319", "r321", "r322", "r323", "r324", "r325", "r765", "r766", "r904", "r905" ] }, "intt_ContingentConsiderationLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ContingentConsiderationLiabilitiesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details" ], "lang": { "en-us": { "role": { "label": "Contingent Consideration Liabilities [Member]", "documentation": "Represents contingent consideration liabilities." } } }, "auth_ref": [] }, "intt_ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceived": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceived", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceived", "terseLabel": "Contingent Liability, Repayment of State and Local Grant Funds Received", "documentation": "Amount of liability recognized arising from contingent for repayment of state and local grant funds received." } } }, "auth_ref": [] }, "intt_ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceivedPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ContingentLiabilityRepaymentOfStateAndLocalGrantFundsReceivedPolicyPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Contingent Liability, Repayment of State and Local Grant Funds Received, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for contingent liability for repayment of state and local grant funds received." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Customer deposits and deferred revenue", "label": "us-gaap_ContractWithCustomerLiabilityCurrent", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r358", "r359", "r370" ] }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Deferred revenue, net of current portion", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent." } } }, "auth_ref": [ "r358", "r359", "r370" ] }, "us-gaap_CorporateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CorporateMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details" ], "lang": { "en-us": { "role": { "label": "Corporate Segment [Member]", "documentation": "Component of an entity that usually provides financial, operational and administrative support and is considered an operating segment. Excludes intersegment elimination and reconciling items." } } }, "auth_ref": [ "r868" ] }, "us-gaap_CorporateNonSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CorporateNonSegmentMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "label": "Segment Reporting, Reconciling Item, Corporate Nonsegment [Member]", "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment." } } }, "auth_ref": [ "r17", "r245", "r246", "r247", "r248", "r251", "r871" ] }, "us-gaap_CostOfRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfRevenue", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Cost of revenue", "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period." } } }, "auth_ref": [ "r95", "r189", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r511", "r765", "r904" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfSalesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details" ], "lang": { "en-us": { "role": { "label": "Cost of Sales [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "srt_CounterpartyNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "CounterpartyNameAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Axis]" } } }, "auth_ref": [ "r190", "r191", "r331", "r356", "r539", "r548", "r591", "r753", "r755" ] }, "intt_CovenantFutureAmountReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "CovenantFutureAmountReceivable", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_CovenantFutureAmountReceivable", "terseLabel": "Covenant, Future Amount Receivable", "documentation": "Future amount receivable if we create and maintain specified levels of employment in the specified location through various dates ending in 2023." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r315", "r901" ] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r315", "r901", "r902" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "intt_CustomerBacklogMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "CustomerBacklogMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Customer Backlog [Member]", "documentation": "Represents customer backlog." } } }, "auth_ref": [] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Customer Concentration Risk [Member]", "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer." } } }, "auth_ref": [ "r108", "r257" ] }, "us-gaap_CustomerRelatedIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CustomerRelatedIntangibleAssetsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Customer-Related Intangible Assets [Member]", "documentation": "Customer-related asset, including, but not limited to, customer lists, and noncontractual customer relationships." } } }, "auth_ref": [ "r19", "r883", "r884", "r885", "r886", "r888", "r890", "r893", "r894" ] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Customer Relationships [Member]", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r57", "r883", "r884", "r885", "r886", "r888", "r890", "r893", "r894" ] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt" ], "lang": { "en-us": { "role": { "label": "Debt Disclosure [Text Block]", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r114", "r188", "r301", "r302", "r303", "r304", "r305", "r314", "r315", "r327", "r333", "r334", "r335", "r336", "r337", "r338", "r343", "r350", "r351", "r352", "r523" ] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r20", "r73", "r74", "r131", "r132", "r193", "r328", "r329", "r330", "r331", "r332", "r334", "r339", "r340", "r341", "r342", "r344", "r345", "r346", "r347", "r348", "r349", "r774", "r775", "r776", "r777", "r778", "r803", "r860", "r895", "r896", "r897", "r1015", "r1016" ] }, "intt_DebtInstrumentCovenantFixedChargeCoverageRatio": { "xbrltype": "pureItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DebtInstrumentCovenantFixedChargeCoverageRatio", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DebtInstrumentCovenantFixedChargeCoverageRatio", "terseLabel": "Debt Instrument, Covenant, Fixed Charge Coverage Ratio", "documentation": "Represents the covenant for a debt instrument relating to the fixed charge coverage ratio." } } }, "auth_ref": [] }, "intt_DebtInstrumentCovenantRatioOfConsolidatedFundedDebtToConsolidatedEbitda": { "xbrltype": "pureItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DebtInstrumentCovenantRatioOfConsolidatedFundedDebtToConsolidatedEbitda", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DebtInstrumentCovenantRatioOfConsolidatedFundedDebtToConsolidatedEbitda", "terseLabel": "Debt Instrument, Covenant, Ratio of Consolidated Funded Debt to Consolidated EBITDA", "documentation": "Represents the covenant for a debt instrument relating to the ratio of consolidated funded debt to consolidated EBITDA." } } }, "auth_ref": [] }, "intt_DebtInstrumentDrawPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DebtInstrumentDrawPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DebtInstrumentDrawPeriod", "terseLabel": "Debt Instrument, Draw Period (Year)", "documentation": "Represents the period of time in which funds can be withdrawn under debt agreement, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentFaceAmount", "terseLabel": "Debt Instrument, Face Amount", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r328", "r523", "r524", "r775", "r776", "r803" ] }, "us-gaap_DebtInstrumentInterestRateEffectivePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentInterestRateEffectivePercentage", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentInterestRateEffectivePercentage", "terseLabel": "Debt Instrument, Interest Rate, Effective Percentage", "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium." } } }, "auth_ref": [ "r76", "r354", "r523", "r524", "r803" ] }, "intt_DebtInstrumentInterestRateInEventOfDefault": { "xbrltype": "percentItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DebtInstrumentInterestRateInEventOfDefault", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DebtInstrumentInterestRateInEventOfDefault", "terseLabel": "Debt Instrument, Interest Rate in Event of Default", "documentation": "Contractual interest rate for funds borrowed in event of default, under the debt agreement." } } }, "auth_ref": [] }, "intt_DebtInstrumentLongtermFixedInterestRateDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DebtInstrumentLongtermFixedInterestRateDebtMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Long-term, Fixed Interest Rate Debt [Member]", "documentation": "Information pertaining to the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r20", "r193", "r328", "r329", "r330", "r331", "r332", "r334", "r339", "r340", "r341", "r342", "r344", "r345", "r346", "r347", "r348", "r349", "r774", "r775", "r776", "r777", "r778", "r803", "r860", "r895", "r896", "r897", "r1015", "r1016" ] }, "intt_DebtInstrumentShorttermVariableInterestRateDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DebtInstrumentShorttermVariableInterestRateDebtMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Debt Instrument, Short-term, Variable Interest Rate Debt [Member]", "documentation": "Infoamrti0n pertaining to the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTerm", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentTerm", "terseLabel": "Debt Instrument, Term (Year)", "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentUnusedBorrowingCapacityAmount", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtInstrumentUnusedBorrowingCapacityAmount", "terseLabel": "Debt Instrument, Unused Borrowing Capacity, Amount", "documentation": "Amount of unused borrowing capacity under the long-term financing arrangement that is available to the entity as of the balance sheet date." } } }, "auth_ref": [ "r77", "r314" ] }, "us-gaap_DebtWeightedAverageInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtWeightedAverageInterestRate", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DebtWeightedAverageInterestRate", "terseLabel": "Debt, Weighted Average Interest Rate", "documentation": "Weighted average interest rate of debt outstanding." } } }, "auth_ref": [] }, "intt_DefenseAerospaceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DefenseAerospaceMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Defense/ Aerospace [Member]", "documentation": "Represents defense/ aerospace." } } }, "auth_ref": [] }, "us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredCompensationLiabilityClassifiedNoncurrent", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent", "terseLabel": "Deferred Compensation Liability, Classified, Noncurrent", "documentation": "Aggregate carrying value as of the balance sheet date of the liabilities for all deferred compensation arrangements payable beyond one year (or the operating cycle, if longer)." } } }, "auth_ref": [] }, "intt_DeferredGrantProceeds": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DeferredGrantProceeds", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DeferredGrantProceeds", "terseLabel": "Deferred Grant Proceeds", "documentation": "Represents the amount of deferred grant proceeds." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Deferred tax assets", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r447", "r448" ] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Deferred tax liabilities", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r447", "r448", "r593" ] }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxesAndTaxCredits", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 20.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Deferred income tax expense (benefit)", "documentation": "Amount of deferred income tax expense (benefit) and income tax credits." } } }, "auth_ref": [ "r105" ] }, "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount", "terseLabel": "Defined Contribution Plan, Employer Discretionary Contribution Amount", "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DefinedContributionPlanEmployerMatchingContributionPercent", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercent", "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Employees' Gross Pay", "documentation": "Percentage of employees' gross pay for which the employer contributes a matching contribution to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DefinedContributionPlanEmployerMatchingContributionPercentOfMatch", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanEmployerMatchingContributionPercentOfMatch", "terseLabel": "Defined Contribution Plan, Employer Matching Contribution, Percent of Match", "documentation": "Percentage employer matches of the employee's percentage contribution matched." } } }, "auth_ref": [] }, "intt_DefinedContributionPlanEmployerMatchingContributionVestingPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DefinedContributionPlanEmployerMatchingContributionVestingPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DefinedContributionPlanEmployerMatchingContributionVestingPeriod", "terseLabel": "Defined Contribution Plan Employer Matching Contribution Vesting Period (Year)", "documentation": "Defined contribution plan employer matching contribution vesting period." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount", "terseLabel": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Amount", "documentation": "Maximum amount the employee may contribute to a defined contribution plan." } } }, "auth_ref": [] }, "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent", "terseLabel": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent", "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan." } } }, "auth_ref": [] }, "intt_DefinedContributionPlanMaximumAnnualEmployerMatchingContributionPerEmployeeAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "DefinedContributionPlanMaximumAnnualEmployerMatchingContributionPerEmployeeAmount", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_DefinedContributionPlanMaximumAnnualEmployerMatchingContributionPerEmployeeAmount", "terseLabel": "Defined Contribution Plan Maximum Annual Employer Matching Contribution Per Emplyee Amount", "documentation": "Maximum dollar amount of employer's annual matching contribution to a defined contribution plan" } } }, "auth_ref": [] }, "us-gaap_DepreciationAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationAndAmortization", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_DepreciationAndAmortization", "negatedLabel": "Acquired intangible amortization", "documentation": "The current period expense charged against earnings on long-lived, physical assets not used in production, and which are not intended for resale, to allocate or recognize the cost of such assets over their useful lives; or to record the reduction in book value of an intangible asset over the benefit period of such asset; or to reflect consumption during the period of an asset that is not used in production." } } }, "auth_ref": [ "r7", "r41" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Depreciation and amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r7", "r221", "r232", "r250", "r765", "r766" ] }, "us-gaap_DerivativeAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeAssets", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Interest rate swap", "terseLabel": "Interest rate swap", "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset." } } }, "auth_ref": [ "r168", "r169", "r489", "r490", "r503", "r510", "r648", "r649", "r650", "r651", "r652", "r654", "r655", "r657", "r658", "r659", "r674", "r675", "r717", "r719", "r720", "r721", "r722", "r723", "r755", "r795", "r799", "r825", "r1001", "r1002", "r1003", "r1065" ] }, "us-gaap_DerivativeContractTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeContractTypeDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Derivative Contract [Domain]", "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset." } } }, "auth_ref": [ "r657", "r659", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r681", "r682", "r683", "r684", "r694", "r695", "r696", "r697", "r700", "r701", "r702", "r703", "r717", "r718", "r720", "r722", "r823", "r825", "r1004", "r1005", "r1006", "r1007", "r1008", "r1009", "r1010", "r1011" ] }, "us-gaap_DerivativeInstrumentRiskAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeInstrumentRiskAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Derivative Instrument [Axis]", "documentation": "Information by type of derivative contract." } } }, "auth_ref": [ "r64", "r66", "r67", "r128", "r657", "r659", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r681", "r682", "r683", "r684", "r694", "r695", "r696", "r697", "r700", "r701", "r702", "r703", "r717", "r718", "r720", "r722", "r755", "r823", "r825", "r1004", "r1005", "r1006", "r1007", "r1008", "r1009", "r1010", "r1011" ] }, "us-gaap_DerivativesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativesPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Derivatives, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for its derivative instruments and hedging activities." } } }, "auth_ref": [ "r13", "r60", "r61", "r62", "r68", "r192", "r207" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables" ], "lang": { "en-us": { "role": { "label": "Disaggregation of Revenue [Table Text Block]", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r909" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r399", "r402", "r434", "r435", "r437", "r789" ] }, "us-gaap_DisclosureTextBlockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureTextBlockAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-14-segment-information", "http://www.intest.com/20240331/role/statement-note-15-subsequent-event", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-8-inventories", "http://www.intest.com/20240331/role/statement-note-9-leases" ], "lang": { "en-us": { "role": { "label": "us-gaap_DisclosureTextBlockAbstract", "terseLabel": "Notes to Financial Statements" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Period Focus", "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Fiscal Year Focus", "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006." } } }, "auth_ref": [] }, "dei_DocumentInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentInformationLineItems", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "dei_DocumentInformationTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentInformationTable", "lang": { "en-us": { "role": { "label": "Document Information [Table]", "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Period End Date", "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r839" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentTransitionReport", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r840" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentType", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Document Type", "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Earnings per common share \u2013 basic (in dollars per share)", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r182", "r199", "r200", "r201", "r202", "r203", "r204", "r208", "r210", "r215", "r216", "r217", "r220", "r461", "r470", "r486", "r487", "r588", "r608", "r758" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Earnings per common share \u2013 diluted (in dollars per share)", "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period." } } }, "auth_ref": [ "r182", "r199", "r200", "r201", "r202", "r203", "r204", "r210", "r215", "r216", "r217", "r220", "r461", "r470", "r486", "r487", "r588", "r608", "r758" ] }, "us-gaap_EarningsPerSharePolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerSharePolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Earnings Per Share, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements." } } }, "auth_ref": [ "r34", "r35", "r219" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Effects of exchange rates on cash", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r1014" ] }, "intt_ElectronicTestMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ElectronicTestMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Electronic Test [Member]", "documentation": "Related to Electronic Test segment." } } }, "auth_ref": [] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Accrued wages and benefits", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r74" ] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsCapitalizedAmount", "terseLabel": "Share-Based Payment Arrangement, Amount Capitalized", "documentation": "Amount of cost capitalized for award under share-based payment arrangement." } } }, "auth_ref": [ "r433" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r436" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)", "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r436" ] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Option [Member]", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "intt_EmployeeStockPurchasePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "EmployeeStockPurchasePlanMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Employee Stock Purchase Plan [Member]", "documentation": "Represents the employee stock purchase plan." } } }, "auth_ref": [] }, "intt_EmployeeStockPurchasePlanTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "EmployeeStockPurchasePlanTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan" ], "lang": { "en-us": { "role": { "label": "Employee Stock Purchase Plan [Text Block]", "documentation": "The entire disclosure for employee stock purchase plan." } } }, "auth_ref": [] }, "intt_EmployeesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "EmployeesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Employees [Member]", "documentation": "Related to employees." } } }, "auth_ref": [] }, "intt_EndUserMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "EndUserMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "End User [Member]", "documentation": "Customers who are the end user of the company's products." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r837" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Common Stock, Shares Outstanding", "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Current Reporting Status", "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [] }, "dei_EntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-document-and-entity-information", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details", "http://www.intest.com/20240331/role/statement-note-10-debt-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information", "http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-15-subsequent-event", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual", "http://www.intest.com/20240331/role/statement-note-8-inventories", "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details", "http://www.intest.com/20240331/role/statement-note-8-inventories-tables", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details", "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details", "http://www.intest.com/20240331/role/statement-note-9-leases-tables", "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Entity [Domain]", "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r837" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFileNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFilerCategory", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Filer Category", "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure." } } }, "auth_ref": [ "r837" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Interactive Data Current", "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)." } } }, "auth_ref": [ "r843" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityRegistrantName", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r837" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityShellCompany", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r837" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntitySmallBusiness", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r837" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r837" ] }, "intt_EnvironmentalTechnologiesInGermanyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "EnvironmentalTechnologiesInGermanyMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Environmental Technologies in Germany [Member]", "documentation": "Represents Environmental technologies in Germany" } } }, "auth_ref": [] }, "intt_EnvironmentalTechnologiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "EnvironmentalTechnologiesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Environmental Technologies [Member]", "documentation": "Related to Environmental Technologies segment." } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r12", "r148", "r177", "r178", "r179", "r194", "r195", "r196", "r198", "r203", "r205", "r207", "r222", "r265", "r266", "r298", "r357", "r455", "r456", "r458", "r459", "r460", "r462", "r469", "r470", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r516", "r517", "r518", "r519", "r520", "r521", "r525", "r527", "r538", "r605", "r632", "r633", "r634", "r646", "r707" ] }, "us-gaap_EquitySecuritiesByIndustryAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquitySecuritiesByIndustryAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Industry Sector [Axis]", "documentation": "Information by industry sector, examples include but are not limited to, commercial, industrial, agricultural, financial services, technology, healthcare and real estate." } } }, "auth_ref": [ "r650", "r653", "r656", "r711", "r713", "r716", "r725", "r771", "r795", "r797", "r799", "r825" ] }, "us-gaap_EquitySecuritiesIndustryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquitySecuritiesIndustryMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Industry Sector [Domain]", "documentation": "Industry sector consisting of government, private and corporate entities engaged in business activities, including but not limited to, commercial, industrial, agricultural, financial services, technology, healthcare and real estate." } } }, "auth_ref": [ "r650", "r653", "r656", "r711", "r713", "r716", "r725", "r795", "r797", "r799", "r825" ] }, "us-gaap_EscrowDepositsRelatedToPropertySales": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EscrowDepositsRelatedToPropertySales", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_EscrowDepositsRelatedToPropertySales", "negatedLabel": "Cash holdback pending final working capital adjustment", "documentation": "Escrow deposits related to property sales in noncash investing and financing activities." } } }, "auth_ref": [ "r30", "r31", "r32" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r341", "r375", "r376", "r377", "r378", "r379", "r380", "r488", "r490", "r491", "r492", "r493", "r502", "r503", "r505", "r543", "r544", "r545", "r775", "r776", "r783", "r784", "r785", "r795", "r799" ] }, "us-gaap_FairValueByLiabilityClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByLiabilityClassAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details" ], "lang": { "en-us": { "role": { "label": "Liability Class [Axis]", "documentation": "Information by class of liability." } } }, "auth_ref": [ "r494", "r495", "r496", "r497", "r498", "r499", "r504" ] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r489", "r490", "r491", "r493", "r795", "r1002", "r1012" ] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements" ], "lang": { "en-us": { "role": { "label": "Fair Value Disclosures [Text Block]", "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information." } } }, "auth_ref": [ "r498", "r500", "r501", "r502", "r505", "r506", "r507", "r508", "r509", "r585", "r795", "r800" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Fair Value, Inputs, Level 1 [Member]", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r341", "r375", "r380", "r490", "r503", "r543", "r783", "r784", "r785", "r795" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Fair Value, Inputs, Level 2 [Member]", "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets." } } }, "auth_ref": [ "r341", "r375", "r380", "r490", "r491", "r503", "r544", "r775", "r776", "r783", "r784", "r785", "r795" ] }, "us-gaap_FairValueInputsLevel3Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel3Member", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Fair Value, Inputs, Level 3 [Member]", "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing." } } }, "auth_ref": [ "r341", "r375", "r376", "r377", "r378", "r379", "r380", "r490", "r491", "r492", "r493", "r503", "r545", "r775", "r776", "r783", "r784", "r785", "r795", "r799" ] }, "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables" ], "lang": { "en-us": { "role": { "label": "Fair Value, Liabilities Measured on Recurring Basis [Table Text Block]", "documentation": "Tabular disclosure of liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3). Where the quoted price in an active market for the identical liability is not available, the Level 1 input is the quoted price of an identical liability when traded as an asset." } } }, "auth_ref": [ "r999", "r1000" ] }, "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationByLiabilityClassDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details" ], "lang": { "en-us": { "role": { "label": "Fair Value by Liability Class [Domain]", "documentation": "Represents classes of liabilities measured and disclosed at fair value." } } }, "auth_ref": [ "r494", "r495", "r496", "r497", "r498", "r499", "r504" ] }, "us-gaap_FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueLiabilitiesMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables" ], "lang": { "en-us": { "role": { "label": "Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]", "documentation": "Tabular disclosure of the fair value measurement of liabilities using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets), and gains or losses recognized in other comprehensive income (loss) and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs) by class of liability." } } }, "auth_ref": [ "r494", "r499", "r504" ] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [ "r489", "r490", "r491", "r493", "r795", "r1002", "r1012" ] }, "us-gaap_FairValueMeasurementPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementPolicyPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Fair Value Measurement, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for fair value measurements of financial and non-financial assets, liabilities and instruments classified in shareholders' equity. Disclosures include, but are not limited to, how an entity that manages a group of financial assets and liabilities on the basis of its net exposure measures the fair value of those assets and liabilities." } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Impact of foreign currency translation adjustments", "label": "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisLiabilityGainLossIncludedInOtherComprehensiveIncome", "documentation": "Amount of gain (loss) recognized in other comprehensive income (OCI) from liability measured at fair value on recurring basis using unobservable input (level 3)." } } }, "auth_ref": [ "r496", "r504" ] }, "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationsRecurringBasisLiabilityValue", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "documentation": "Fair value of financial instrument classified as a liability measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing." } } }, "auth_ref": [ "r494", "r504" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r341", "r375", "r376", "r377", "r378", "r379", "r380", "r488", "r490", "r491", "r492", "r493", "r502", "r503", "r505", "r543", "r544", "r545", "r775", "r776", "r783", "r784", "r785", "r795", "r799" ] }, "us-gaap_FairValueMeasurementsRecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsRecurringMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "Fair Value, Recurring [Member]", "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value." } } }, "auth_ref": [ "r795", "r999", "r1000", "r1001", "r1002", "r1003", "r1012" ] }, "us-gaap_FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedAndIndefiniteLivedIntangibleAssetsAcquiredAsPartOfBusinessCombinationTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables" ], "lang": { "en-us": { "role": { "label": "Finite-Lived and Indefinite-Lived Intangible Assets Acquired as Part of Business Combination [Table Text Block]", "documentation": "Tabular disclosure of finite-lived and indefinite-lived intangible assets acquired as part of a business combination." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Finite-lived, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r158", "r273", "r291", "r773" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "terseLabel": "2025", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r293", "r741", "r773" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "terseLabel": "2024 (remainder)", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year." } } }, "auth_ref": [ "r1073" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "terseLabel": "2028", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r293", "r741", "r773" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "terseLabel": "2027", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r293", "r741", "r773" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "terseLabel": "2026", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r293", "r741", "r773" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r284", "r286", "r287", "r288", "r290", "r291", "r295", "r296", "r553", "r554", "r741" ] }, "us-gaap_FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "terseLabel": "Impact of foreign currency translation adjustments", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details": { "parentTag": "us-gaap_IntangibleAssetsGrossExcludingGoodwill", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Finite-lived, Gross Carrying Amount", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r273", "r291", "r554", "r773" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r284", "r286", "r287", "r288", "r290", "r291", "r295", "r296", "r741" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details": { "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Net Carrying Amount, finite-lived", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r553", "r890" ] }, "us-gaap_FinitelivedIntangibleAssetsAcquired1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinitelivedIntangibleAssetsAcquired1", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details": { "parentTag": "intt_IntangibleAssetsAcquiredTotal", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Finite-lived intangible assets", "terseLabel": "Acquisition of Alfamation", "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition." } } }, "auth_ref": [ "r286" ] }, "intt_FlyingProbeAndIncircuitTestersMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "FlyingProbeAndIncircuitTestersMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Flying Probe and In-circuit Testers [Member]", "documentation": "Related to flying probe and in-circuit testers." } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 14.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax", "negatedLabel": "Foreign exchange gain", "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction." } } }, "auth_ref": [ "r512", "r513", "r514", "r515", "r704" ] }, "us-gaap_GeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "General and administrative expense", "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line." } } }, "auth_ref": [ "r97", "r690" ] }, "us-gaap_GeneralAndAdministrativeExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeneralAndAdministrativeExpenseMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details" ], "lang": { "en-us": { "role": { "label": "General and Administrative Expense [Member]", "documentation": "Primary financial statement caption encompassing general and administrative expense." } } }, "auth_ref": [ "r97" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "weight": 1.0, "order": 1.0 }, "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Goodwill", "label": "Goodwill", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r157", "r274", "r586", "r766", "r772", "r796", "r805", "r880", "r881" ] }, "us-gaap_GoodwillAcquiredDuringPeriod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAcquiredDuringPeriod", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details" ], "lang": { "en-us": { "role": { "label": "Goodwill resulting from acquisition", "terseLabel": "Acquisition of Alfamation", "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination." } } }, "auth_ref": [ "r277", "r772" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-" ], "lang": { "en-us": { "role": { "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r879", "r882" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_GoodwillForeignCurrencyTranslationGainLoss", "terseLabel": "Impact of foreign currency translation adjustments", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) asset representing future economic benefit from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r281" ] }, "intt_GoodwillIntangibleAndLongLivedAssetsPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "GoodwillIntangibleAndLongLivedAssetsPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Goodwill Intangible And Long Lived Assets [Policy Text Block]", "documentation": "The policy disclosure of goodwill intangible and long lived assets." } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_GrossProfit", "totalLabel": "Gross profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r93", "r95", "r139", "r189", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r511", "r760", "r765", "r867", "r870", "r872", "r873", "r874", "r904" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Earnings before income tax expense", "label": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "totalLabel": "Earnings before income tax expense", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r94", "r135", "r139", "r589", "r602", "r760", "r765", "r867", "r870", "r872", "r873", "r874" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details" ], "lang": { "en-us": { "role": { "label": "Statement of Income Location, Balance [Axis]", "documentation": "Information by location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r299", "r306", "r307", "r495", "r499", "r504", "r629", "r631", "r691", "r741", "r798", "r1035" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details" ], "lang": { "en-us": { "role": { "label": "Statement of Income Location, Balance [Domain]", "documentation": "Location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r306", "r307", "r495", "r499", "r504", "r629", "r631", "r691", "r741", "r798", "r1035" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Income tax expense", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r141", "r145", "r206", "r207", "r221", "r235", "r250", "r449", "r450", "r457", "r609", "r792" ] }, "us-gaap_IncomeTaxPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Income Tax, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements." } } }, "auth_ref": [ "r176", "r445", "r446", "r451", "r452", "r453", "r454", "r641" ] }, "us-gaap_IncomeTaxesPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxesPaid", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Domestic and foreign income taxes", "documentation": "Amount, before refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax." } } }, "auth_ref": [ "r29", "r104", "r859", "r996", "r997" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInAccountsPayable", "terseLabel": "Accounts payable", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 21.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInAccountsReceivable", "negatedLabel": "Trade accounts receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable", "terseLabel": "Domestic and foreign income taxes payable", "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction." } } }, "auth_ref": [ "r6" ] }, "intt_IncreaseDecreaseInAccruedProfessionalFees": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "IncreaseDecreaseInAccruedProfessionalFees", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "intt_IncreaseDecreaseInAccruedProfessionalFees", "terseLabel": "Accrued professional fees", "documentation": "The amount of increase (decrease) in accrued professional fees." } } }, "auth_ref": [] }, "intt_IncreaseDecreaseInAccruedSalesCommission": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "IncreaseDecreaseInAccruedSalesCommission", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "intt_IncreaseDecreaseInAccruedSalesCommission", "terseLabel": "Accrued sales commissions", "documentation": "The increase (decrease) during the reporting period in accrued sales commission." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Customer deposits and deferred revenue", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r550", "r857" ] }, "intt_IncreaseDecreaseInContractWithCustomerLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "IncreaseDecreaseInContractWithCustomerLiabilityNoncurrent", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 15.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "intt_IncreaseDecreaseInContractWithCustomerLiabilityNoncurrent", "terseLabel": "Deferred revenue, net of current portion", "documentation": "Amount of increase (decrease) in noncurrent obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities", "terseLabel": "Accrued wages and benefits", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInInventories", "negatedLabel": "Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Changes in assets and liabilities:" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingLeaseLiability", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Operating lease liabilities", "terseLabel": "Increase (Decrease) in Operating Lease Liability", "documentation": "Amount of increase (decrease) in obligation for operating lease." } } }, "auth_ref": [ "r850", "r857" ] }, "us-gaap_IncreaseDecreaseInOtherCurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherCurrentLiabilities", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInOtherCurrentLiabilities", "terseLabel": "Other current liabilities", "documentation": "Amount of increase (decrease) in current liabilities classified as other." } } }, "auth_ref": [ "r857" ] }, "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherNoncurrentAssets", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets", "negatedLabel": "Other assets", "documentation": "Amount of increase (decrease) in noncurrent assets classified as other." } } }, "auth_ref": [ "r857" ] }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 17.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities", "terseLabel": "Other liabilities", "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "negatedLabel": "Prepaid expenses and other current assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r6" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "calculation": { "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "terseLabel": "Unvested shares of restricted stock and employee stock options (in shares)", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r211", "r212", "r213", "r217", "r401" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Indefinite-Lived Intangible Assets [Axis]", "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r284", "r289", "r294", "r773" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details": { "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Net Carrying Amount, indefinite-lived", "label": "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill", "terseLabel": "Indefinite-lived, Gross Carrying Amount", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r273", "r294", "r773" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "terseLabel": "Impact of foreign currency translation adjustments", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value." } } }, "auth_ref": [ "r892" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of the company." } } }, "auth_ref": [ "r284", "r289", "r294", "r773" ] }, "us-gaap_IndefinitelivedIntangibleAssetsAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndefinitelivedIntangibleAssetsAcquired", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details": { "parentTag": "intt_IntangibleAssetsAcquiredTotal", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Indefinite-lived intangible assets", "terseLabel": "Acquisition of Alfamation", "documentation": "Amount of increase in assets, excluding financial assets and goodwill, lacking physical substance with an indefinite life, from an acquisition." } } }, "auth_ref": [ "r289", "r892" ] }, "intt_IndependentDirectorsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "IndependentDirectorsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Independent Directors [Member]", "documentation": "Represents the independent directors." } } }, "auth_ref": [] }, "intt_IndustrialMarketMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "IndustrialMarketMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Industrial Market [Member]", "documentation": "The industrial market into which the reporting entity sells products." } } }, "auth_ref": [] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingArrLineItems", "auth_ref": [ "r841" ] }, "intt_IntangibleAssetsAcquiredTotal": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "IntangibleAssetsAcquiredTotal", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "intt_IntangibleAssetsAcquiredTotal", "totalLabel": "Total intangible assets", "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance, from an acquisition." } } }, "auth_ref": [] }, "us-gaap_IntangibleAssetsGrossExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsGrossExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_IntangibleAssetsGrossExcludingGoodwill", "totalLabel": "Intangible Assets, Gross Carrying Amount", "terseLabel": "Intangible Assets, Gross Carrying Amount", "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill." } } }, "auth_ref": [ "r157" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 }, "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Net Carrying Amount", "totalLabel": "Net Carrying Amount", "terseLabel": "Net Carrying Amount", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r284", "r890", "r892" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_InterestExpense", "terseLabel": "Interest Expense, Operating and Nonoperating", "negatedLabel": "Interest expense", "negatedTerseLabel": "Interest expense", "documentation": "Amount of interest expense classified as operating and nonoperating. Includes, but is not limited to, cost of borrowing accounted for as interest expense." } } }, "auth_ref": [ "r221", "r227", "r231", "r237", "r250", "r522", "r765", "r766" ] }, "us-gaap_InterestRateSwapMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestRateSwapMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "lang": { "en-us": { "role": { "label": "Interest Rate Swap [Member]", "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period." } } }, "auth_ref": [ "r743", "r830", "r831" ] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-8-inventories" ], "lang": { "en-us": { "role": { "label": "Inventory Disclosure [Text Block]", "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory." } } }, "auth_ref": [ "r269" ] }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryFinishedGoodsNetOfReserves", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Finished goods", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale." } } }, "auth_ref": [ "r112", "r750" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 }, "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Inventories", "totalLabel": "Total inventories", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r166", "r748", "r805" ] }, "us-gaap_InventoryPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Inventory, Policy [Policy Text Block]", "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost." } } }, "auth_ref": [ "r143", "r153", "r165", "r269", "r270", "r272", "r551", "r756" ] }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryRawMaterialsNetOfReserves", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Raw materials", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process." } } }, "auth_ref": [ "r112", "r752" ] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Work in process", "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing." } } }, "auth_ref": [ "r112", "r751" ] }, "us-gaap_InventoryWriteDown": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryWriteDown", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "verboseLabel": "Provision for excess and obsolete inventory", "label": "us-gaap_InventoryWriteDown", "terseLabel": "Inventory Write-down", "documentation": "Amount of loss from reductions in inventory due to subsequent measurement adjustments, including, but not limited to, physical deterioration, obsolescence, or changes in price levels." } } }, "auth_ref": [ "r271" ] }, "us-gaap_LeaseContractualTermAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseContractualTermAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Lease Contractual Term [Axis]", "documentation": "Information by contractual term of lease arrangement." } } }, "auth_ref": [ "r537", "r849" ] }, "us-gaap_LeaseContractualTermDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseContractualTermDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Lease Contractual Term [Domain]", "documentation": "Contractual term of lease arrangement." } } }, "auth_ref": [ "r537", "r849" ] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-tables" ], "lang": { "en-us": { "role": { "label": "Lease, Cost [Table Text Block]", "documentation": "Tabular disclosure of lessee's lease cost. Includes, but is not limited to, interest expense for finance lease, amortization of right-of-use asset for finance lease, operating lease cost, short-term lease cost, variable lease cost and sublease income." } } }, "auth_ref": [ "r1018" ] }, "us-gaap_LeaseExpirationDate1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseExpirationDate1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Lease Expiration Date", "documentation": "Date which lease or group of leases is set to expire, in YYYY-MM-DD format." } } }, "auth_ref": [] }, "intt_LeaseFacilityInSingaporeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "LeaseFacilityInSingaporeMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Lease Facility in Singapore [Member]", "documentation": "Represents the Lease Facility in Singapore." } } }, "auth_ref": [] }, "us-gaap_LeaseholdImprovementsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseholdImprovementsGross", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Leasehold improvements", "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r113" ] }, "dei_LegalEntityAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LegalEntityAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-document-and-entity-information", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details", "http://www.intest.com/20240331/role/statement-note-10-debt-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information", "http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-15-subsequent-event", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual", "http://www.intest.com/20240331/role/statement-note-8-inventories", "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details", "http://www.intest.com/20240331/role/statement-note-8-inventories-tables", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details", "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details", "http://www.intest.com/20240331/role/statement-note-9-leases-tables", "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Legal Entity [Axis]", "documentation": "The set of legal entities associated with a report." } } }, "auth_ref": [] }, "us-gaap_LesseeLeasesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeLeasesPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Lessee, Leases [Policy Text Block]", "documentation": "Disclosure of accounting policy for leasing arrangement entered into by lessee." } } }, "auth_ref": [ "r530" ] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-tables" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block]", "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position." } } }, "auth_ref": [ "r1019" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "totalLabel": "Total lease payments", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r535" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "terseLabel": "2025", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r535" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "2028", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r535" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "terseLabel": "2027", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r535" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "terseLabel": "2026", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r535" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "terseLabel": "2024", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year." } } }, "auth_ref": [ "r1019" ] }, "intt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "intt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "terseLabel": "Thereafter", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "negatedLabel": "Less imputed interest", "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease." } } }, "auth_ref": [ "r535" ] }, "us-gaap_LesseeOperatingLeaseTermOfContract": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseTermOfContract", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LesseeOperatingLeaseTermOfContract", "terseLabel": "Lessee, Operating Lease, Term of Contract (Year)", "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r1017" ] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases" ], "lang": { "en-us": { "role": { "label": "Lessee, Operating Leases [Text Block]", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r526" ] }, "us-gaap_LetterOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LetterOfCreditMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Letter of Credit [Member]", "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)." } } }, "auth_ref": [] }, "us-gaap_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Letters of Credit Amount Outstanding", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_Liabilities", "totalLabel": "Total liabilities", "documentation": "Amount of liability recognized for present obligation requiring transfer or otherwise providing economic benefit to others." } } }, "auth_ref": [ "r20", "r73", "r74", "r75", "r78", "r79", "r80", "r81", "r189", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r474", "r477", "r478", "r511", "r666", "r759", "r835", "r904", "r1021", "r1022" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_LiabilitiesAndStockholdersEquity", "totalLabel": "Total liabilities and stockholders' equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r88", "r134", "r599", "r805", "r861", "r878", "r1013" ] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_LiabilitiesCurrent", "totalLabel": "Total current liabilities", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r75", "r152", "r189", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r474", "r477", "r478", "r511", "r805", "r904", "r1021", "r1022" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Current liabilities:" } } }, "auth_ref": [] }, "intt_LifeSciencesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "LifeSciencesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Life Sciences [Member]", "documentation": "Related to Life Sciences." } } }, "auth_ref": [] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LineOfCredit", "terseLabel": "Long-Term Line of Credit, Total", "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r20", "r132", "r1031" ] }, "us-gaap_LineOfCreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Lender Name [Axis]", "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit." } } }, "auth_ref": [ "r72", "r77", "r860", "r901", "r902" ] }, "us-gaap_LineOfCreditFacilityExpirationDate1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityExpirationDate1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Line of Credit, Expiration Date", "documentation": "Date the credit facility terminates, in YYYY-MM-DD format." } } }, "auth_ref": [ "r72", "r77" ] }, "us-gaap_LineOfCreditFacilityInitiationDate1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityInitiationDate1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Line of Credit, Issue Date", "documentation": "Date the credit facility first became available, in YYYY-MM-DD format." } } }, "auth_ref": [ "r72", "r77" ] }, "us-gaap_LineOfCreditFacilityLenderDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityLenderDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Line of Credit Facility, Lender [Domain]", "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility." } } }, "auth_ref": [ "r72", "r77", "r860", "r901" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity", "terseLabel": "Line of Credit Facility, Maximum Borrowing Capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r72", "r77" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LocalPhoneNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongLivedAssetsByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongLivedAssetsByGeographicAreasTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables" ], "lang": { "en-us": { "role": { "label": "Long-Lived Assets by Geographic Areas [Table Text Block]", "documentation": "Tabular disclosure of long-lived assets, excluding financial instruments, long-term customer relationships of a financial institution, mortgage rights, deferred policy acquisition costs, and deferred tax assets, by geographic areas located in the entity's country of domicile and foreign countries in which the entity holds assets." } } }, "auth_ref": [ "r110" ] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebt", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_LongTermDebt", "terseLabel": "Long-Term Debt", "totalLabel": "Long-Term Debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r20", "r132", "r340", "r353", "r775", "r776", "r803", "r1031" ] }, "us-gaap_LongTermDebtCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Current portion of Term Note and other long-term debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation." } } }, "auth_ref": [ "r161" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details" ], "lang": { "en-us": { "role": { "verboseLabel": "2025", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r9", "r193", "r345" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details" ], "lang": { "en-us": { "role": { "verboseLabel": "2028", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r9", "r193", "r345" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details" ], "lang": { "en-us": { "role": { "verboseLabel": "2027", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r9", "r193", "r345" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details" ], "lang": { "en-us": { "role": { "verboseLabel": "2026", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r9", "r193", "r345" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details" ], "lang": { "en-us": { "role": { "verboseLabel": "2024 (remainder)", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year." } } }, "auth_ref": [ "r862" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Term Note and other long-term debt, net of current portion", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r162" ] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r20", "r895", "r896", "r897" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Long-Term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r20", "r43", "r895", "r896", "r897" ] }, "intt_MTBankMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "MTBankMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "M&T Bank [Member]", "documentation": "Information related to M&T Bank." } } }, "auth_ref": [] }, "us-gaap_MachineryAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MachineryAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_PropertyPlantAndEquipmentGross", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Machinery and equipment", "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment." } } }, "auth_ref": [ "r113" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MajorCustomersAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "auth_ref": [ "r257", "r782", "r815", "r820", "r909", "r1032", "r1036", "r1037", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "intt_MansfieldMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "MansfieldMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Mansfield [Member]", "documentation": "Represents information about Mansfield." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "auth_ref": [ "r310", "r311", "r312", "r313", "r393", "r443", "r493", "r549", "r628", "r630", "r638", "r658", "r659", "r710", "r712", "r714", "r715", "r724", "r739", "r740", "r770", "r779", "r788", "r799", "r800", "r801", "r802", "r816", "r908", "r1023", "r1024", "r1025", "r1026", "r1027", "r1028" ] }, "intt_MembersOfTheSeniorManagementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "MembersOfTheSeniorManagementMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Members of The Senior Management [Member]", "documentation": "Represents members of the senior management." } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "auth_ref": [ "r310", "r311", "r312", "r313", "r393", "r443", "r493", "r549", "r628", "r630", "r638", "r658", "r659", "r710", "r712", "r714", "r715", "r724", "r739", "r740", "r770", "r779", "r788", "r799", "r800", "r801", "r816", "r908", "r1023", "r1024", "r1025", "r1026", "r1027", "r1028" ] }, "intt_MtLaurelMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "MtLaurelMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details" ], "lang": { "en-us": { "role": { "label": "Mt Laurel [Member]", "documentation": "Represents information about Mt laurel." } } }, "auth_ref": [] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]" } } }, "auth_ref": [ "r842" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "auth_ref": [ "r257", "r782", "r815", "r820", "r909", "r1032", "r1036", "r1037", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "us-gaap_NatureOfOperations": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NatureOfOperations", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations" ], "lang": { "en-us": { "role": { "label": "Nature of Operations [Text Block]", "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward." } } }, "auth_ref": [ "r144", "r146" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "totalLabel": "Net cash used in financing activities", "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit." } } }, "auth_ref": [ "r185" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "CASH FLOWS FROM FINANCING ACTIVITIES" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "totalLabel": "Net cash used in investing activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r185" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "CASH FLOWS FROM INVESTING ACTIVITIES" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "totalLabel": "Net cash provided by operating activities", "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities." } } }, "auth_ref": [ "r102", "r103", "r105" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "CASH FLOWS FROM OPERATING ACTIVITIES" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 0.0 }, "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 }, "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "verboseLabel": "Net earnings (loss)", "label": "Net earnings", "totalLabel": "Net earnings", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r96", "r105", "r136", "r150", "r171", "r174", "r179", "r189", "r197", "r199", "r200", "r201", "r202", "r203", "r206", "r207", "r214", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r461", "r470", "r487", "r511", "r604", "r688", "r705", "r706", "r833", "r904" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_NonRule10b51ArrAdoptedFlag", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r842" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_NonRule10b51ArrTrmntdFlag", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r842" ] }, "us-gaap_NonUsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonUsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details" ], "lang": { "en-us": { "role": { "label": "Non-US [Member]", "documentation": "Countries excluding the United States of America (US)." } } }, "auth_ref": [ "r1069", "r1070", "r1071", "r1072" ] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Details of acquisition:" } } }, "auth_ref": [] }, "us-gaap_NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncashOrPartNoncashAcquisitionValueOfAssetsAcquired1", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Fair value of assets acquired, net of cash", "documentation": "The value of an asset or business acquired in a noncash (or part noncash) acquisition. Noncash is defined as information about all investing and financing activities of an enterprise during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period." } } }, "auth_ref": [ "r30", "r31", "r32" ] }, "us-gaap_NoncashOrPartNoncashAcquisitionValueOfLiabilitiesAssumed1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncashOrPartNoncashAcquisitionValueOfLiabilitiesAssumed1", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_NoncashOrPartNoncashAcquisitionValueOfLiabilitiesAssumed1", "negatedLabel": "Liabilities assumed", "documentation": "The total amount of [all] liabilities that an Entity assumes in acquiring a business or in consideration for an asset received in a noncash (or part noncash) acquisition. Noncash is defined as transactions during a period that affect recognized assets or liabilities but that do not result in cash receipts or cash payments in the period. \"Part noncash\" refers to that portion of the transaction not resulting in cash receipts or cash payments in the period." } } }, "auth_ref": [ "r30", "r31", "r32" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Other income (expense)", "label": "us-gaap_NonoperatingIncomeExpense", "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)." } } }, "auth_ref": [ "r98" ] }, "us-gaap_NonvestedRestrictedStockSharesActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonvestedRestrictedStockSharesActivityTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables" ], "lang": { "en-us": { "role": { "label": "Nonvested Restricted Stock Shares Activity [Table Text Block]", "documentation": "Tabular disclosure of the changes in outstanding nonvested restricted stock shares." } } }, "auth_ref": [ "r18" ] }, "intt_NoteToFinancialStatementDetailsTextual": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "NoteToFinancialStatementDetailsTextual", "lang": { "en-us": { "role": { "label": "Note To Financial Statement Details Textual" } } }, "auth_ref": [] }, "intt_NotesToFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "NotesToFinancialStatementsAbstract", "lang": { "en-us": { "role": { "label": "Notes To Financial Statements [Abstract]" } } }, "auth_ref": [] }, "intt_NumberOfMajorCustomers": { "xbrltype": "integerItemType", "nsuri": "http://www.intest.com/20240331", "localname": "NumberOfMajorCustomers", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_NumberOfMajorCustomers", "terseLabel": "Number of Major Customers", "documentation": "Represents the number of major customers accounting for 10% or more of the specified concentration risk benchmark, which includes, but not limited to, sales revenue, accounts receivable, etc." } } }, "auth_ref": [] }, "us-gaap_NumberOfOperatingSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfOperatingSegments", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_NumberOfOperatingSegments", "terseLabel": "Number of Operating Segments", "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues." } } }, "auth_ref": [ "r766", "r869" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_NumberOfReportableSegments", "terseLabel": "Number of Reportable Segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r761", "r769", "r869" ] }, "intt_October2021AgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "October2021AgreementMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "October 2021 Agreement [Member]", "documentation": "Information related to the October 2021 Agreement." } } }, "auth_ref": [] }, "intt_OemIntegratorsAndDistributorMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "OemIntegratorsAndDistributorMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "OEM, Integrators and Distributor [Member]", "documentation": "Represents OEM, Integrators and Distributor" } } }, "auth_ref": [] }, "us-gaap_OperatingExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpenses", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_OperatingExpenses", "totalLabel": "Total operating expenses", "documentation": "Generally recurring costs associated with normal operations except for the portion of these expenses which can be clearly related to production and included in cost of sales or services. Includes selling, general and administrative expense." } } }, "auth_ref": [] }, "us-gaap_OperatingExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingExpensesAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Operating expenses:" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_OperatingIncomeLoss", "totalLabel": "Operating income", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r139", "r760", "r867", "r870", "r872", "r873", "r874" ] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseCost", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Operating lease cost", "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability." } } }, "auth_ref": [ "r531", "r804" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiability", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details" ], "lang": { "en-us": { "role": { "label": "Total", "terseLabel": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r529" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Current portion of operating lease liabilities", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r529" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Operating lease liabilities, net of current portion", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r529" ] }, "intt_OperatingLeaseRemainingLeaseTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.intest.com/20240331", "localname": "OperatingLeaseRemainingLeaseTerm", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Range of remaining lease terms (in years) (Year)", "documentation": "The remaining lease term of operating leases." } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "verboseLabel": "Right-of-use assets, net", "label": "us-gaap_OperatingLeaseRightOfUseAsset", "terseLabel": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r528" ] }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense", "terseLabel": "Operating Lease, Right-of-Use Asset, Periodic Reduction", "documentation": "Amount of periodic reduction over lease term of carrying amount of right-of-use asset from operating lease." } } }, "auth_ref": [ "r858" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Weighted average discount rate", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r534", "r804" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Weighted average remaining lease term (in years) (Year)", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r533", "r804" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details" ], "lang": { "en-us": { "role": { "label": "Operating Segments [Member]", "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r244", "r245", "r246", "r247", "r248", "r251", "r765", "r766" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Other assets", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r159" ] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "terseLabel": "Foreign currency translation adjustments", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity." } } }, "auth_ref": [ "r5", "r11", "r127" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited" ], "lang": { "en-us": { "role": { "label": "Unrealized loss on interest rate swap agreement", "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent." } } }, "auth_ref": [ "r170" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Other comprehensive loss", "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r5", "r11", "r127", "r172", "r175", "r203" ] }, "us-gaap_OtherCurrentLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherCurrentLiabilitiesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual" ], "lang": { "en-us": { "role": { "label": "Other Current Liabilities [Member]", "documentation": "Primary financial statement caption encompassing other current liabilities." } } }, "auth_ref": [] }, "us-gaap_OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherInventoryMaterialsSuppliesAndMerchandiseUnderConsignment", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details" ], "lang": { "en-us": { "role": { "label": "Inventory consigned to others", "documentation": "Gross amount of inventory owned by the entity but in the hands of a customer, typically a reseller." } } }, "auth_ref": [ "r852" ] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Other current liabilities", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r74", "r805" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Other liabilities", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r79" ] }, "intt_OtherMultiMarketsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "OtherMultiMarketsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Other Multi Markets [Member]", "documentation": "Information related to other multi markets." } } }, "auth_ref": [] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Other income", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r99" ] }, "us-gaap_PatentedTechnologyMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PatentedTechnologyMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Patented Technology [Member]", "documentation": "Exclusive legal right granted by the government to the owner of the patented technology to exploit the technology for a period of time specified by law." } } }, "auth_ref": [ "r58", "r883", "r884", "r885", "r886", "r888", "r890", "r893", "r894" ] }, "us-gaap_PatentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PatentsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Patents [Member]", "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law." } } }, "auth_ref": [ "r124", "r883", "r884", "r885", "r886", "r888", "r890", "r893", "r894" ] }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "negatedLabel": "Settlement of employee tax liabilities in connection with treasury stock transaction", "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement." } } }, "auth_ref": [ "r183" ] }, "us-gaap_PaymentsToAcquireBusinessesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireBusinessesGross", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_PaymentsToAcquireBusinessesGross", "terseLabel": "Payments to Acquire Businesses, Gross", "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price." } } }, "auth_ref": [ "r25", "r467" ] }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "negatedLabel": "Acquisition of business, net of cash acquired", "terseLabel": "Net cash paid for acquisition", "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase." } } }, "auth_ref": [ "r25" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment", "negatedTerseLabel": "Purchase of property and equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r100" ] }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans" ], "lang": { "en-us": { "role": { "label": "Retirement Benefits [Text Block]", "documentation": "The entire disclosure for retirement benefits." } } }, "auth_ref": [ "r372", "r373", "r374", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r785" ] }, "intt_PerformancebasedRestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "PerformancebasedRestrictedStockMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Performance-Based Restricted Stock [Member]", "documentation": "Represents the performance-based restricted stock." } } }, "auth_ref": [] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PlanNameAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PlanNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995" ] }, "us-gaap_PolicyTextBlockAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PolicyTextBlockAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "us-gaap_PolicyTextBlockAbstract", "terseLabel": "Accounting Policies" } } }, "auth_ref": [] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Preferred stock par value (in dollars per share)", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r82", "r355" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Preferred stock, shares authorized (in shares)", "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r82", "r668" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Preferred stock, shares issued (in shares)", "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt." } } }, "auth_ref": [ "r82", "r355" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Preferred stock, shares outstanding (in shares)", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r82", "r668", "r686", "r1067", "r1068" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Preferred stock, $0.01 par value; 5,000,000 shares authorized; no shares issued or outstanding", "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity." } } }, "auth_ref": [ "r82", "r595", "r805" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Prepaid expenses and other current assets", "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r853" ] }, "intt_PresidentOfEnvironmentalTechnologiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "PresidentOfEnvironmentalTechnologiesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "President of Environmental Technologies [Member]", "documentation": "Represents the president of Environmental Technologies." } } }, "auth_ref": [] }, "intt_PresidentOfProcessTechnologiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "PresidentOfProcessTechnologiesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "President of Process Technologies [Member]", "documentation": "Pertains to President of Environmental Technologies." } } }, "auth_ref": [] }, "us-gaap_PriorPeriodReclassificationAdjustmentDescription": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PriorPeriodReclassificationAdjustmentDescription", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Reclassification, Comparability Adjustment [Policy Text Block]", "documentation": "Disclosure of accounting policy for reclassification affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error." } } }, "auth_ref": [ "r851" ] }, "intt_ProceedsFromEmployeeStockPurchasePlanShares": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ProceedsFromEmployeeStockPurchasePlanShares", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Proceeds from shares sold under Employee Stock Purchase Plan", "documentation": "The amount of cash inflow from shares sold under employee stock purchase plan." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromIssuanceOfLongTermDebt", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ProceedsFromIssuanceOfLongTermDebt", "terseLabel": "Proceeds from Issuance of Long-term Debt, Total", "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer." } } }, "auth_ref": [ "r26", "r642" ] }, "intt_ProceedsFromSaleOfMachineryAndEquipmentNetOfGain": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ProceedsFromSaleOfMachineryAndEquipmentNetOfGain", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 19.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Proceeds from sale of demonstration equipment, net of gain", "documentation": "Proceeds from sale of machinery and equipment net of gain." } } }, "auth_ref": [] }, "us-gaap_ProceedsFromShortTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromShortTermDebt", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Proceeds from short-term borrowings", "documentation": "The cash inflow from a borrowing having initial term of repayment within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r26" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Proceeds from stock options exercised", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r4", "r16" ] }, "intt_ProcessTechnologiesInEuropeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ProcessTechnologiesInEuropeMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Process Technologies in Europe [Member]", "documentation": "Represents the process technologies segment in Europe" } } }, "auth_ref": [] }, "intt_ProcessTechnologiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ProcessTechnologiesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Process Technologies [Member]", "documentation": "Related to process technologies." } } }, "auth_ref": [] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r253", "r552", "r621", "r622", "r623", "r624", "r625", "r626", "r627", "r744", "r780", "r814", "r816", "r817", "r821", "r822", "r899", "r900", "r909", "r1032", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]" } } }, "auth_ref": [ "r253", "r552", "r621", "r622", "r623", "r624", "r625", "r626", "r627", "r744", "r780", "r814", "r816", "r817", "r821", "r822", "r899", "r900", "r909", "r1032", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "us-gaap_ProfitLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProfitLoss", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ProfitLoss", "terseLabel": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest." } } }, "auth_ref": [ "r150", "r171", "r174", "r184", "r189", "r197", "r203", "r206", "r207", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r461", "r470", "r472", "r475", "r476", "r487", "r511", "r589", "r603", "r645", "r688", "r705", "r706", "r793", "r794", "r834", "r856", "r904" ] }, "us-gaap_PropertyPlantAndEquipmentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Property and equipment:" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_PropertyPlantAndEquipmentGross", "totalLabel": "Gross property and equipment", "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r113", "r155", "r601" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_PropertyPlantAndEquipmentNet", "terseLabel": "Property and Equipment", "totalLabel": "Net property and equipment", "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures." } } }, "auth_ref": [ "r8", "r536", "r590", "r601", "r805" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r310", "r311", "r312", "r313", "r373", "r393", "r428", "r429", "r430", "r443", "r493", "r546", "r547", "r549", "r628", "r630", "r638", "r658", "r659", "r710", "r712", "r714", "r715", "r724", "r739", "r740", "r770", "r779", "r788", "r799", "r800", "r801", "r802", "r816", "r825", "r898", "r908", "r1002", "r1024", "r1025", "r1026", "r1027", "r1028" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r310", "r311", "r312", "r313", "r373", "r393", "r428", "r429", "r430", "r443", "r493", "r546", "r547", "r549", "r628", "r630", "r638", "r658", "r659", "r710", "r712", "r714", "r715", "r724", "r739", "r740", "r770", "r779", "r788", "r799", "r800", "r801", "r802", "r816", "r825", "r898", "r908", "r1002", "r1024", "r1025", "r1026", "r1027", "r1028" ] }, "us-gaap_ReceivablesPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReceivablesPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Receivable [Policy Text Block]", "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable." } } }, "auth_ref": [ "r259", "r260", "r261", "r263", "r877" ] }, "us-gaap_RepaymentsOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RepaymentsOfLongTermDebt", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_RepaymentsOfLongTermDebt", "negatedLabel": "Repayments of long-term borrowings", "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer." } } }, "auth_ref": [ "r101", "r643" ] }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RepurchaseAgreementCounterpartyNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Domain]" } } }, "auth_ref": [ "r190", "r191", "r331", "r356", "r539", "r548", "r591", "r754", "r755" ] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Engineering and product development expense", "documentation": "Amount of expense for research and development. Includes, but is not limited to, cost for computer software product to be sold, leased, or otherwise marketed and writeoff of research and development assets acquired in transaction other than business combination or joint venture formation or both. Excludes write-down of intangible asset acquired in business combination or from joint venture formation or both, used in research and development activity." } } }, "auth_ref": [ "r444", "r741", "r765", "r1029" ] }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpenseMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details" ], "lang": { "en-us": { "role": { "label": "Research and Development Expense [Member]", "documentation": "Primary financial statement caption in which the reported facts about research and development expense have been included." } } }, "auth_ref": [] }, "us-gaap_RestrictedCashAndCashEquivalentsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashAndCashEquivalentsNoncurrent", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Restricted certificates of deposit", "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r27", "r142", "r186" ] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "Restricted Stock [Member]", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r34" ] }, "intt_RestrictedStockVestingInThreeYearsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "RestrictedStockVestingInThreeYearsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Restricted Stock Vesting in Three Years [Member]", "documentation": "Information related to the restricted stock awards vesting in three years." } } }, "auth_ref": [] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Retained earnings", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r85", "r115", "r598", "r635", "r637", "r644", "r669", "r805" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r148", "r194", "r195", "r196", "r198", "r203", "r205", "r207", "r265", "r266", "r298", "r455", "r456", "r458", "r459", "r460", "r462", "r469", "r470", "r479", "r481", "r482", "r484", "r485", "r525", "r527", "r632", "r634", "r646", "r1067" ] }, "us-gaap_RetirementPlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetirementPlanNameAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Retirement Plan Name [Axis]", "documentation": "Information by name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans." } } }, "auth_ref": [ "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r788", "r844", "r910", "r911", "r912", "r913", "r914", "r915", "r916", "r917", "r918", "r919", "r920", "r921", "r922", "r923", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946", "r947", "r948", "r949", "r950", "r951", "r952", "r953", "r954", "r955", "r956", "r957", "r958", "r959", "r960", "r961", "r962", "r963", "r964", "r965", "r966", "r967", "r968", "r969" ] }, "us-gaap_RetirementPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetirementPlanNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "Retirement Plan Name [Domain]", "documentation": "Name of plan designed to provide retirement benefits. Includes, but is not limited to, legal name of defined benefit and defined contribution plans." } } }, "auth_ref": [ "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r788", "r844", "r910", "r911", "r912", "r913", "r914", "r915", "r916", "r917", "r918", "r919", "r920", "r921", "r922", "r923", "r924", "r925", "r926", "r927", "r928", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r936", "r937", "r938", "r939", "r940", "r941", "r942", "r943", "r944", "r945", "r946", "r947", "r948", "r949", "r950", "r951", "r952", "r953", "r954", "r955", "r956", "r957", "r958", "r959", "r960", "r961", "r962", "r963", "r964", "r965", "r966", "r967", "r968", "r969" ] }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 0.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Net revenues", "label": "Revenue", "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise." } } }, "auth_ref": [ "r137", "r138", "r221", "r228", "r229", "r244", "r250", "r253", "r255", "r257", "r368", "r369", "r552" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers" ], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Text Block]", "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts." } } }, "auth_ref": [ "r147", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r371" ] }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables" ], "lang": { "en-us": { "role": { "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue." } } }, "auth_ref": [ "r109" ] }, "us-gaap_RevenueRecognitionPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRecognitionPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Revenue [Policy Text Block]", "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources." } } }, "auth_ref": [ "r689", "r742", "r757" ] }, "us-gaap_Revenues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Revenues", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_Revenues", "terseLabel": "Revenues", "documentation": "Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss)." } } }, "auth_ref": [ "r137", "r138", "r180", "r189", "r221", "r228", "r229", "r244", "r250", "r253", "r255", "r257", "r264", "r316", "r317", "r319", "r320", "r321", "r322", "r323", "r325", "r326", "r511", "r589", "r765", "r904" ] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_Rule10b51ArrAdoptedFlag", "terseLabel": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r842" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "ecd_Rule10b51ArrTrmntdFlag", "terseLabel": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r842" ] }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SaleOfStockNameOfTransactionDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "Sale of Stock [Domain]", "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement." } } }, "auth_ref": [] }, "us-gaap_SalesRevenueNetMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SalesRevenueNetMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Revenue Benchmark [Member]", "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r257", "r845" ] }, "intt_ScheduleOfChangesInGoodwillTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ScheduleOfChangesInGoodwillTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Changes in Goodwill [Table Text Block]", "documentation": "Tabular disclosure of the changes in goodwill." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]", "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement." } } }, "auth_ref": [ "r47" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r773", "r889" ] }, "us-gaap_ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfIndefiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Indefinite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance and exist in perpetuity, by either major class or business segment." } } }, "auth_ref": [ "r773", "r892" ] }, "intt_ScheduleOfIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ScheduleOfIntangibleAssetsTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Intangible Assets [Table Text Block]", "documentation": "The tabular disclosure of the intangible assets." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-8-inventories-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Inventory, Current [Table Text Block]", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r21", "r89", "r90", "r91" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r9" ] }, "intt_ScheduleOfOutstandingLettersOfCreditTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ScheduleOfOutstandingLettersOfCreditTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-tables" ], "lang": { "en-us": { "role": { "label": "Schedule Of Outstanding Letters Of Credit [Table Text Block]", "documentation": "Schedule of outstanding letters of credit table text block." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]", "documentation": "Tabular disclosure of the amounts recognized as of the acquisition date for each major class of assets acquired and liabilities assumed. May include but not limited to the following: (a) acquired receivables; (b) contingencies recognized at the acquisition date; and (c) the fair value of noncontrolling interests in the acquiree." } } }, "auth_ref": [ "r123" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r38", "r39", "r40" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]", "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value." } } }, "auth_ref": [ "r14", "r15", "r116" ] }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions." } } }, "auth_ref": [ "r117" ] }, "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Weighted Average Number of Shares [Table Text Block]", "documentation": "Tabular disclosure of the weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit)." } } }, "auth_ref": [ "r33" ] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables" ], "lang": { "en-us": { "role": { "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r773", "r891" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "Security12bTitle", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r836" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "SecurityExchangeName", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r838" ] }, "intt_SecurityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SecurityMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Security [Member]", "documentation": "Related to security." } } }, "auth_ref": [] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Segments [Domain]", "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity." } } }, "auth_ref": [ "r137", "r138", "r139", "r140", "r221", "r224", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r238", "r239", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r250", "r251", "r252", "r257", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r297", "r308", "r309", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r762", "r765", "r766", "r772", "r819", "r1032", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details" ], "lang": { "en-us": { "role": { "label": "Geographical [Domain]" } } }, "auth_ref": [ "r255", "r256", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r650", "r653", "r655", "r711", "r713", "r716", "r725", "r727", "r729", "r730", "r731", "r732", "r734", "r735", "r736", "r737", "r738", "r745", "r781", "r806", "r807", "r808", "r809", "r810", "r811", "r812", "r813", "r818", "r825", "r909", "r1032", "r1036", "r1037", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information" ], "lang": { "en-us": { "role": { "label": "Segment Reporting Disclosure [Text Block]", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r140", "r221", "r223", "r224", "r225", "r226", "r227", "r240", "r242", "r243", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r257", "r761", "r763", "r764", "r765", "r767", "r768", "r769" ] }, "us-gaap_SellingAndMarketingExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingAndMarketingExpenseMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details" ], "lang": { "en-us": { "role": { "label": "Selling and Marketing Expense [Member]", "documentation": "Primary financial statement caption encompassing selling and marketing expense." } } }, "auth_ref": [ "r97" ] }, "us-gaap_SellingExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingExpense", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited": { "parentTag": "us-gaap_OperatingExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited" ], "lang": { "en-us": { "role": { "label": "Selling expense", "documentation": "Expenses recognized in the period that are directly related to the selling and distribution of products or services." } } }, "auth_ref": [ "r97" ] }, "intt_SemiconductorMarketMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SemiconductorMarketMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Semiconductor Market [Member]", "documentation": "The semiconductor market into which the reporting entity sells products." } } }, "auth_ref": [] }, "intt_SemiconductorProductionTestProductsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SemiconductorProductionTestProductsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Semiconductor Production Test Products [Member]", "documentation": "Represents information about semiconductor production test products sold by the reporting entity." } } }, "auth_ref": [] }, "intt_ServiceAndOtherProductsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ServiceAndOtherProductsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Service and Other Products [Member]", "documentation": "Represents information about services and other products sold by the reporting entity." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 16.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensation", "terseLabel": "Amortization of deferred compensation related to stock-based awards", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Period (Year)", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r789" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate", "presentation": [ "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardDiscountFromMarketPricePurchaseDate", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Discount from Market Price, Purchase Date", "documentation": "Discount rate from fair value on purchase date that participants pay for shares." } } }, "auth_ref": [ "r46" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "negatedLabel": "Forfeited, number of shares (in shares)", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period." } } }, "auth_ref": [ "r420" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "Forfeited, weighted average exercise price (in dollars per share)", "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event." } } }, "auth_ref": [ "r420" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Granted, number of shares (in shares)", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r418" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "Granted, weighted average exercise price (in dollars per share)", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r418" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "periodStartLabel": "Unvested shares outstanding (in shares)", "periodEndLabel": "Unvested shares outstanding (in shares)", "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date." } } }, "auth_ref": [ "r415", "r416" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "periodStartLabel": "Unvested shares outstanding, weighted average exercise price (in dollars per share)", "periodEndLabel": "Unvested shares outstanding, weighted average exercise price (in dollars per share)", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r415", "r416" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period (in shares)", "negatedLabel": "Vested, number of shares (in shares)", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period." } } }, "auth_ref": [ "r419" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value", "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash." } } }, "auth_ref": [ "r422" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "Vested, weighted average exercise price (in dollars per share)", "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement." } } }, "auth_ref": [ "r419" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details" ], "lang": { "en-us": { "role": { "label": "Dividend yield", "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term." } } }, "auth_ref": [ "r429" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details" ], "lang": { "en-us": { "role": { "label": "Expected common stock market price volatility factor", "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period." } } }, "auth_ref": [ "r428" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details" ], "lang": { "en-us": { "role": { "label": "Risk-free interest rate", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r430" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized (in shares)", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r791" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals" ], "lang": { "en-us": { "role": { "label": "Options exercisable (in shares)", "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan." } } }, "auth_ref": [ "r409" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Canceled, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price of options that were either forfeited or expired." } } }, "auth_ref": [ "r976" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod", "negatedLabel": "Canceled, number of shares (in shares)", "documentation": "The number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan." } } }, "auth_ref": [ "r413" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Granted, number of shares (in shares)", "documentation": "Gross number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r411" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share)", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r421" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "periodStartLabel": "Options outstanding, number of shares (in shares)", "periodEndLabel": "Options outstanding, number of shares (in shares)", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r407", "r408" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "periodStartLabel": "Options outstanding, weighted average exercise price (in dollars per share)", "periodEndLabel": "Options outstanding, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r407", "r408" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Number (in shares)", "documentation": "Number of fully vested and expected to vest options outstanding that can be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r423" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details" ], "lang": { "en-us": { "role": { "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r403", "r404", "r405", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r423", "r424", "r427", "r428", "r429", "r430", "r431" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Exercised, weighted average exercise price (in dollars per share)", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r412" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "verboseLabel": "Granted, weighted average exercise price (in dollars per share)", "label": "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r411" ] }, "us-gaap_ShareBasedCompensationAwardTrancheOneMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationAwardTrancheOneMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Tranche One [Member]", "documentation": "First portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationAwardTrancheTwoMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationAwardTrancheTwoMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Tranche Two [Member]", "documentation": "Second portion of award under share-based payment arrangement differentiated by vesting feature, including, but not limited to, performance measure or service period." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement [Policy Text Block]", "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost." } } }, "auth_ref": [ "r399", "r406", "r425", "r426", "r427", "r428", "r431", "r438", "r439", "r440", "r441" ] }, "us-gaap_SharePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharePrice", "presentation": [ "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharePrice", "terseLabel": "Share Price (in dollars per share)", "documentation": "Price of a single share of a number of saleable stocks of a company." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentage", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Award Vesting Rights, Percentage", "documentation": "Percentage of vesting of award under share-based payment arrangement." } } }, "auth_ref": [ "r970" ] }, "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageLowerRange": { "xbrltype": "percentItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageLowerRange", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageLowerRange", "terseLabel": "Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Lower Range", "documentation": "Lower range limit of percentage of vesting of award under share-based payment arrangement." } } }, "auth_ref": [] }, "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageUpperRange": { "xbrltype": "percentItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageUpperRange", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardAwardVestingRightsPercentageUpperRange", "terseLabel": "Share-based Compensation Arrangement By Share-based Payment Award, Award Vesting Rights Percentage Upper Range", "documentation": "Upper range limit of percentage of vesting of award under share-based payment arrangement." } } }, "auth_ref": [] }, "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardDiscountAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardDiscountAmount", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 18.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardDiscountAmount", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Discount Amount", "negatedLabel": "Discount on shares sold under Employee Stock Purchase Plan", "documentation": "Discount amount from fair value on purchase date that participants pay for shares." } } }, "auth_ref": [] }, "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantedFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantedFairValue", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantedFairValue", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Equity Instruments Other than Options, Granted, Fair Value", "documentation": "Fair value of awards other than options granted during the period." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardExpirationPeriod", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award, Expiration Period (Year)", "documentation": "Period from grant date that an equity-based award expires, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r790" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details" ], "lang": { "en-us": { "role": { "label": "Weighted average expected life of stock options (years) (Year)", "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r427" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsNonvestedOptionsForfeitedNumberOfShares", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Nonvested Options Forfeited, Number of Shares (in shares)", "documentation": "Number of non-vested options forfeited." } } }, "auth_ref": [] }, "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardProbableFinalVestingPercentage": { "xbrltype": "percentItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardProbableFinalVestingPercentage", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "intt_SharebasedCompensationArrangementBySharebasedPaymentAwardProbableFinalVestingPercentage", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Probable Final Vesting Percentage", "documentation": "Probable final vesting percentage of share-based payment award." } } }, "auth_ref": [] }, "intt_SharebasedPaymentArrangementVestingOnThirdAnniversaryOfGrantDateMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "SharebasedPaymentArrangementVestingOnThirdAnniversaryOfGrantDateMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Vesting on Third Anniversary of Grant Date [Member]", "documentation": "Vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_SharesIssuedPricePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesIssuedPricePerShare", "presentation": [ "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharesIssuedPricePerShare", "terseLabel": "Shares Issued, Price Per Share (in dollars per share)", "documentation": "Per share or per unit amount of equity securities issued." } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesOutstanding", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "us-gaap_SharesOutstanding", "periodStartLabel": "Balance (in shares)", "periodEndLabel": "Balance (in shares)", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_ShortTermBorrowings": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermBorrowings", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_ShortTermBorrowings", "terseLabel": "Short-Term Debt", "documentation": "Reflects the total carrying amount as of the balance sheet date of debt having initial terms less than one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r71", "r131", "r805", "r1030" ] }, "us-gaap_ShortTermLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermLeaseCost", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details" ], "lang": { "en-us": { "role": { "label": "Short-term lease cost", "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less." } } }, "auth_ref": [ "r532", "r804" ] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies" ], "lang": { "en-us": { "role": { "label": "Significant Accounting Policies [Text Block]", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r106", "r187" ] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r137", "r138", "r139", "r140", "r149", "r221", "r224", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r238", "r239", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r250", "r251", "r252", "r257", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r297", "r300", "r308", "r309", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r617", "r618", "r619", "r620", "r762", "r765", "r766", "r772", "r819", "r1032", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r12", "r83", "r86", "r87", "r148", "r177", "r178", "r179", "r194", "r195", "r196", "r198", "r203", "r205", "r207", "r222", "r265", "r266", "r298", "r357", "r455", "r456", "r458", "r459", "r460", "r462", "r469", "r470", "r479", "r480", "r481", "r482", "r483", "r484", "r485", "r516", "r517", "r518", "r519", "r520", "r521", "r525", "r527", "r538", "r605", "r632", "r633", "r634", "r646", "r707" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details" ], "lang": { "en-us": { "role": { "label": "Geographical [Axis]" } } }, "auth_ref": [ "r255", "r256", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r650", "r653", "r655", "r711", "r713", "r716", "r725", "r727", "r729", "r730", "r731", "r732", "r734", "r735", "r736", "r737", "r738", "r745", "r781", "r806", "r807", "r808", "r809", "r810", "r811", "r812", "r813", "r818", "r825", "r909", "r1032", "r1036", "r1037", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1056", "r1057", "r1058", "r1059", "r1060", "r1061", "r1062", "r1063" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details", "http://www.intest.com/20240331/role/statement-note-10-debt-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information", "http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-15-subsequent-event", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual", "http://www.intest.com/20240331/role/statement-note-8-inventories", "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details", "http://www.intest.com/20240331/role/statement-note-8-inventories-tables", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details", "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details", "http://www.intest.com/20240331/role/statement-note-9-leases-tables", "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Statement [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r194", "r195", "r196", "r222", "r527", "r552", "r640", "r647", "r660", "r661", "r662", "r663", "r664", "r665", "r668", "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r681", "r682", "r683", "r684", "r685", "r687", "r689", "r690", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r701", "r702", "r703", "r707", "r826" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementTable", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-comprehensive-earnings-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual", "http://www.intest.com/20240331/role/statement-note-10-debt-future-maturities-of-longterm-debt-details", "http://www.intest.com/20240331/role/statement-note-10-debt-outstanding-letters-of-credit-details", "http://www.intest.com/20240331/role/statement-note-10-debt-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information", "http://www.intest.com/20240331/role/statement-note-14-segment-information-details-textual", "http://www.intest.com/20240331/role/statement-note-14-segment-information-identifiable-assets-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-segment-information-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-15-subsequent-event", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-details-textual", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-", "http://www.intest.com/20240331/role/statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-details-textual", "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-proforma-information-details", "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-details-textual", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables", "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual", "http://www.intest.com/20240331/role/statement-note-8-inventories", "http://www.intest.com/20240331/role/statement-note-8-inventories-inventories-details", "http://www.intest.com/20240331/role/statement-note-8-inventories-tables", "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual", "http://www.intest.com/20240331/role/statement-note-9-leases-lease-costs-details", "http://www.intest.com/20240331/role/statement-note-9-leases-maturities-of-lease-liabilities-details", "http://www.intest.com/20240331/role/statement-note-9-leases-tables", "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Statement [Table]", "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity." } } }, "auth_ref": [ "r194", "r195", "r196", "r222", "r258", "r527", "r552", "r640", "r647", "r660", "r661", "r662", "r663", "r664", "r665", "r668", "r671", "r672", "r673", "r674", "r675", "r676", "r677", "r678", "r679", "r681", "r682", "r683", "r684", "r685", "r687", "r689", "r690", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r701", "r702", "r703", "r707", "r826" ] }, "us-gaap_StockIssued1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssued1", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_StockIssued1", "negatedLabel": "Stock issued", "documentation": "The fair value of stock issued in noncash financing activities." } } }, "auth_ref": [ "r30", "r31", "r32" ] }, "us-gaap_StockIssuedDuringPeriodSharesAcquisitions": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesAcquisitions", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Issuance of shares in connection with acquisition of Alfamation (in shares)", "documentation": "Number of shares of stock issued during the period pursuant to acquisitions." } } }, "auth_ref": [ "r82", "r83", "r115" ] }, "us-gaap_StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesEmployeeStockPurchasePlans", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Shares issued under Employee Stock Purchase Plan (in shares)", "terseLabel": "Stock Issued During Period, Shares, Employee Stock Purchase Plans (in shares)", "documentation": "Number of shares issued during the period as a result of an employee stock purchase plan." } } }, "auth_ref": [ "r12", "r82", "r83", "r115" ] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_StockIssuedDuringPeriodSharesNewIssues", "terseLabel": "Stock Issued During Period, Shares, New Issues (in shares)", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r12", "r82", "r83", "r115", "r642", "r707", "r726" ] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardForfeited", "negatedLabel": "Stock Issued During Period, Shares, Restricted Stock Award, Forfeited (in shares)", "documentation": "Number of shares related to Restricted Stock Award forfeited during the period." } } }, "auth_ref": [ "r12", "r82", "r83", "r115" ] }, "us-gaap_StockIssuedDuringPeriodSharesRestrictedStockAwardGross": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesRestrictedStockAwardGross", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Issuance of unvested shares of restricted stock (in shares)", "documentation": "Total number of shares issued during the period, including shares forfeited, as a result of Restricted Stock Awards." } } }, "auth_ref": [ "r12", "r115" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-stock-option-activity-details" ], "lang": { "en-us": { "role": { "label": "Stock options exercised (in shares)", "negatedLabel": "Exercised, number of shares (in shares)", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r12", "r82", "r83", "r115", "r412" ] }, "us-gaap_StockIssuedDuringPeriodValueAcquisitions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueAcquisitions", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Issuance of shares in connection with acquisition of Alfamation", "documentation": "Value of stock issued pursuant to acquisitions during the period." } } }, "auth_ref": [ "r12", "r83", "r86", "r87", "r115" ] }, "us-gaap_StockIssuedDuringPeriodValueEmployeeStockPurchasePlan": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueEmployeeStockPurchasePlan", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-", "http://www.intest.com/20240331/role/statement-note-12-employee-stock-purchase-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Shares issued under Employee Stock Purchase Plan", "terseLabel": "Stock Issued During Period, Value, Employee Stock Purchase Plan", "documentation": "Aggregate change in value for stock issued during the period as a result of employee stock purchase plan." } } }, "auth_ref": [ "r12", "r82", "r83", "r115" ] }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueNewIssues", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "us-gaap_StockIssuedDuringPeriodValueNewIssues", "terseLabel": "Stock Issued During Period, Value, New Issues", "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering." } } }, "auth_ref": [ "r12", "r82", "r83", "r115", "r646", "r707", "r726", "r834" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardForfeitures": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardForfeitures", "crdr": "debit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Stock Issued During Period, Value, Restricted Stock Award, Forfeitures", "documentation": "Value of stock related to Restricted Stock Awards forfeited during the period." } } }, "auth_ref": [ "r12", "r82", "r83", "r115" ] }, "us-gaap_StockIssuedDuringPeriodValueRestrictedStockAwardGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueRestrictedStockAwardGross", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Issuance of unvested shares of restricted stock", "documentation": "Aggregate value of stock related to Restricted Stock Awards issued during the period." } } }, "auth_ref": [ "r12", "r82", "r83", "r115" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Stock options exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r12", "r83", "r86", "r87", "r115" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited", "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "us-gaap_StockholdersEquity", "totalLabel": "Total stockholders' equity", "periodStartLabel": "Balance", "periodEndLabel": "Balance", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r83", "r86", "r87", "r111", "r670", "r686", "r708", "r709", "r805", "r835", "r861", "r878", "r1013", "r1067" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Stockholders' equity:" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventsPolicyPolicyTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-significant-accounting-policies-policies" ], "lang": { "en-us": { "role": { "label": "Subsequent Events, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for reporting subsequent events." } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-15-subsequent-event" ], "lang": { "en-us": { "role": { "label": "Subsequent Events [Text Block]", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r541", "r542" ] }, "us-gaap_SubsidiarySaleOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsidiarySaleOfStockAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations", "http://www.intest.com/20240331/role/statement-note-1-nature-of-operations-details-textual" ], "lang": { "en-us": { "role": { "label": "Sale of Stock [Axis]", "documentation": "Information by type of sale of the entity's stock." } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-cash-flows-unaudited" ], "lang": { "en-us": { "role": { "label": "Cash payments for:" } } }, "auth_ref": [] }, "us-gaap_TableTextBlock": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TableTextBlock", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt-tables", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-tables", "http://www.intest.com/20240331/role/statement-note-14-segment-information-tables", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-tables", "http://www.intest.com/20240331/role/statement-note-3-acquisition-tables", "http://www.intest.com/20240331/role/statement-note-4-fair-value-measurements-tables", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-tables", "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-tables", "http://www.intest.com/20240331/role/statement-note-8-inventories-tables", "http://www.intest.com/20240331/role/statement-note-9-leases-tables" ], "lang": { "en-us": { "role": { "label": "us-gaap_TableTextBlock", "terseLabel": "Notes Tables" } } }, "auth_ref": [] }, "us-gaap_TaxesPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TaxesPayableCurrent", "crdr": "credit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "Domestic and foreign income taxes payable", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r73", "r74" ] }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TechnologyBasedIntangibleAssetsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Technology-Based Intangible Assets [Member]", "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights." } } }, "auth_ref": [ "r19", "r883", "r884", "r885", "r886", "r888", "r890", "r893", "r894" ] }, "intt_TermNoteMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "TermNoteMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-10-debt", "http://www.intest.com/20240331/role/statement-note-10-debt-details-textual" ], "lang": { "en-us": { "role": { "label": "Term Note [Member]", "documentation": "Information related to Term Note." } } }, "auth_ref": [] }, "intt_TexasInstrumentsIncorporatedMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "TexasInstrumentsIncorporatedMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-7-major-customers", "http://www.intest.com/20240331/role/statement-note-7-major-customers-details-textual" ], "lang": { "en-us": { "role": { "label": "Texas Instruments Incorporated [Member]", "documentation": "Texas instruments incorporated member." } } }, "auth_ref": [] }, "intt_The2023StockIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "The2023StockIncentivePlanMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "The 2023 Stock Incentive Plan [Member]", "documentation": "Represents the 2023 Stock Incentive Plan." } } }, "auth_ref": [] }, "intt_The401KPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "The401KPlanMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "401(k) Plan [Member]", "documentation": "A 401(k) plan offered by the reporting entity to eligible employees." } } }, "auth_ref": [] }, "intt_TheAmbrellPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "TheAmbrellPlanMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans", "http://www.intest.com/20240331/role/statement-note-13-employee-benefit-plans-details-textual" ], "lang": { "en-us": { "role": { "label": "The Ambrell Plan [Member]", "documentation": "Related to the Ambrell defined contribution retirement plan." } } }, "auth_ref": [] }, "intt_ThermalProcessMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ThermalProcessMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Thermal Process [Member]", "documentation": "Represents thermal process." } } }, "auth_ref": [] }, "intt_ThermalTestingProductsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "ThermalTestingProductsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Thermal Testing Products [Member]", "documentation": "Represents information about Thermal products sold by the reporting entity." } } }, "auth_ref": [] }, "srt_TitleOfIndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "TitleOfIndividualAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Title and Position [Axis]" } } }, "auth_ref": [ "r875", "r1020" ] }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Title and Position [Domain]" } } }, "auth_ref": [] }, "us-gaap_TradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TradeNamesMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-3-acquisition-intangible-assets-details", "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Trade Names [Member]", "documentation": "Rights acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r56", "r883", "r884", "r885", "r886", "r887", "r888", "r890", "r892", "r893", "r894" ] }, "us-gaap_TrademarksMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TrademarksMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-5-goodwill-and-intangible-assets-intangible-assets-details" ], "lang": { "en-us": { "role": { "label": "Trademarks [Member]", "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style." } } }, "auth_ref": [ "r56", "r773", "r883", "r884", "r885", "r886", "r887", "r888", "r890", "r892", "r893", "r894" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "TradingSymbol", "presentation": [ "http://www.intest.com/20240331/role/statement-document-and-entity-information" ], "lang": { "en-us": { "role": { "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TreasuryStockCommonMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonMember", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-stockholders-equity-unaudited-" ], "lang": { "en-us": { "role": { "label": "Treasury Stock, Common [Member]", "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r44" ] }, "us-gaap_TreasuryStockCommonShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonShares", "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "lang": { "en-us": { "role": { "label": "Treasury stock, shares (in shares)", "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r44" ] }, "us-gaap_TreasuryStockCommonValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TreasuryStockCommonValue", "crdr": "debit", "calculation": { "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-balance-sheets-current-period-unaudited" ], "lang": { "en-us": { "role": { "label": "us-gaap_TreasuryStockCommonValue", "negatedLabel": "Treasury stock, at cost; 78,515 and 75,758 shares, respectively", "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury." } } }, "auth_ref": [ "r44", "r45", "r86" ] }, "us-gaap_TypeOfArrangementAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TypeOfArrangementAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]", "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations." } } }, "auth_ref": [ "r471" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "US", "presentation": [ "http://www.intest.com/20240331/role/statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "http://www.intest.com/20240331/role/statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details" ], "lang": { "en-us": { "role": { "label": "UNITED STATES" } } }, "auth_ref": [] }, "us-gaap_VestingAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VestingAxis", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Vesting [Axis]", "documentation": "Information by vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [ "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995" ] }, "intt_VestingBasedOnPerformanceMetricsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "VestingBasedOnPerformanceMetricsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Vesting Based On Performance Metrics [Member]", "documentation": "Represents vesting based on performance metrics." } } }, "auth_ref": [] }, "us-gaap_VestingDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VestingDomain", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Vesting [Domain]", "documentation": "Vesting schedule of award under share-based payment arrangement." } } }, "auth_ref": [ "r970", "r971", "r972", "r973", "r974", "r975", "r976", "r977", "r978", "r979", "r980", "r981", "r982", "r983", "r984", "r985", "r986", "r987", "r988", "r989", "r990", "r991", "r992", "r993", "r994", "r995" ] }, "intt_VestingOnJanuary12025BasedOnPerformanceMetricsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "VestingOnJanuary12025BasedOnPerformanceMetricsMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan", "http://www.intest.com/20240331/role/statement-note-11-stockbased-compensation-plan-details-textual" ], "lang": { "en-us": { "role": { "label": "Vesting on January 1, 2025, Based on Performance Metrics [Member]", "documentation": "Pertain to the vesting schedule and criteria of award under share-based payment arrangement." } } }, "auth_ref": [] }, "intt_VideoImagingMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "VideoImagingMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details" ], "lang": { "en-us": { "role": { "label": "Video Imaging [Member]", "documentation": "Related to video imaging." } } }, "auth_ref": [] }, "intt_WarehouseAndOfficeSpaceMember": { "xbrltype": "domainItemType", "nsuri": "http://www.intest.com/20240331", "localname": "WarehouseAndOfficeSpaceMember", "presentation": [ "http://www.intest.com/20240331/role/statement-note-9-leases", "http://www.intest.com/20240331/role/statement-note-9-leases-details-textual" ], "lang": { "en-us": { "role": { "label": "Warehouse and Office Space [Member]", "documentation": "Relating to Warehouse and Office space." } } }, "auth_ref": [] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details" ], "lang": { "en-us": { "role": { "label": "Weighted average common shares and common share equivalents outstanding \u2013 diluted (in shares)", "totalLabel": "Weighted average common shares and common share equivalents outstanding\u2013diluted (in shares)", "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period." } } }, "auth_ref": [ "r209", "r217" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.intest.com/20240331/role/statement-consolidated-statements-of-operations-unaudited", "http://www.intest.com/20240331/role/statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details" ], "lang": { "en-us": { "role": { "label": "Weighted average common shares outstanding \u2013 basic (in shares)", "terseLabel": "Weighted average common shares outstanding\u2013basic (in shares)", "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period." } } }, "auth_ref": [ "r208", "r217" ] }, "intt_statement-statement-note-10-debt-future-maturities-of-longterm-debt-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-10-debt-future-maturities-of-longterm-debt-details", "lang": { "en-us": { "role": { "label": "Note 10 - Debt - Future Maturities of Long-term Debt (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-10-debt-outstanding-letters-of-credit-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-10-debt-outstanding-letters-of-credit-details", "lang": { "en-us": { "role": { "label": "Note 10 - Debt - Outstanding Letters of Credit (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-10-debt-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-10-debt-tables", "lang": { "en-us": { "role": { "label": "Note 10 - Debt" } } }, "auth_ref": [] }, "intt_statement-statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-11-stockbased-compensation-plan-allocation-of-sharebased-compensation-expense-details", "lang": { "en-us": { "role": { "label": "Note 11 - Stock-based Compensation Plan - Allocation of Share-based Compensation Expense (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-11-stockbased-compensation-plan-stock-option-activity-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-11-stockbased-compensation-plan-stock-option-activity-details", "lang": { "en-us": { "role": { "label": "Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-11-stockbased-compensation-plan-stock-option-activity-details-parentheticals", "lang": { "en-us": { "role": { "label": "Note 11 - Stock-based Compensation Plan - Stock Option Activity (Details) (Parentheticals)" } } }, "auth_ref": [] }, "intt_statement-statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-11-stockbased-compensation-plan-stock-options-valuation-assumptions-details", "lang": { "en-us": { "role": { "label": "Note 11 - Stock-based Compensation Plan - Stock Options Valuation Assumptions (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-11-stockbased-compensation-plan-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-11-stockbased-compensation-plan-tables", "lang": { "en-us": { "role": { "label": "Note 11 - Stock-based Compensation Plan" } } }, "auth_ref": [] }, "intt_statement-statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-11-stockbased-compensation-plan-unvested-stock-activity-details", "lang": { "en-us": { "role": { "label": "Note 11 - Stock-based Compensation Plan - Unvested Stock Activity (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-14-segment-information-identifiable-assets-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-14-segment-information-identifiable-assets-details", "lang": { "en-us": { "role": { "label": "Note 14 - Segment Information - Identifiable Assets (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-14-segment-information-longlived-assets-by-geographical-area-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-14-segment-information-longlived-assets-by-geographical-area-details", "lang": { "en-us": { "role": { "label": "Note 14 - Segment Information - Long-lived Assets by Geographical Area (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-14-segment-information-net-revenue-from-unaffiliated-customers-details", "lang": { "en-us": { "role": { "label": "Note 14 - Segment Information - Net Revenue From Unaffiliated Customers (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-14-segment-information-segment-information-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-14-segment-information-segment-information-details", "lang": { "en-us": { "role": { "label": "Note 14 - Segment Information - Segment Information (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-14-segment-information-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-14-segment-information-tables", "lang": { "en-us": { "role": { "label": "Note 14 - Segment Information" } } }, "auth_ref": [] }, "intt_statement-statement-note-2-summary-of-significant-accounting-policies-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-2-summary-of-significant-accounting-policies-tables", "lang": { "en-us": { "role": { "label": "Note 2 - Summary of Significant Accounting Policies" } } }, "auth_ref": [] }, "intt_statement-statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-2-summary-of-significant-accounting-policies-weighted-average-common-shares-details", "lang": { "en-us": { "role": { "label": "Note 2 - Summary of Significant Accounting Policies - Weighted Average Common Shares (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-3-acquisition-acquired-assets-and-liabilities-assumed-details", "lang": { "en-us": { "role": { "label": "Note 3 - Acquisition - Acquired assets and Liabilities Assumed (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-3-acquisition-intangible-assets-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-3-acquisition-intangible-assets-details", "lang": { "en-us": { "role": { "label": "Note 3 - Acquisition - Intangible Assets (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-3-acquisition-proforma-information-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-3-acquisition-proforma-information-details", "lang": { "en-us": { "role": { "label": "Note 3 - Acquisition - Proforma Information (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-3-acquisition-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-3-acquisition-tables", "lang": { "en-us": { "role": { "label": "Note 3 - Acquisition" } } }, "auth_ref": [] }, "intt_statement-statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-4-fair-value-measurements-changes-in-the-fair-value-of-level-3-contingent-consideration-liabilities-details", "lang": { "en-us": { "role": { "label": "Note 4 - Fair Value Measurements - Changes in the Fair Value of Level 3 Contingent Consideration Liabilities (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-4-fair-value-measurements-liabilities-measured-at-fair-value-on-recurring-basis-details", "lang": { "en-us": { "role": { "label": "Note 4 - Fair Value Measurements - Liabilities Measured at Fair Value on Recurring Basis (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-4-fair-value-measurements-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-4-fair-value-measurements-tables", "lang": { "en-us": { "role": { "label": "Note 4 - Fair Value Measurements" } } }, "auth_ref": [] }, "intt_statement-statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-5-goodwill-and-intangible-assets-changes-in-goodwill-details", "lang": { "en-us": { "role": { "label": "Note 5 - Goodwill and Intangible Assets - Changes in Goodwill (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-indefinitelived-intangible-assets-details", "lang": { "en-us": { "role": { "label": "Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Indefinite-lived Intangible Assets (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-5-goodwill-and-intangible-assets-changes-in-the-amount-of-the-carrying-value-of-intangible-assets-details", "lang": { "en-us": { "role": { "label": "Note 5 - Goodwill and Intangible Assets - Changes in the Amount of the Carrying Value of Intangible Assets (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-5-goodwill-and-intangible-assets-future-amortization-expense-details", "lang": { "en-us": { "role": { "label": "Note 5 - Goodwill and Intangible Assets - Future Amortization Expense (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-5-goodwill-and-intangible-assets-intangible-assets-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-5-goodwill-and-intangible-assets-intangible-assets-details", "lang": { "en-us": { "role": { "label": "Note 5 - Goodwill and Intangible Assets - Intangible Assets (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-5-goodwill-and-intangible-assets-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-5-goodwill-and-intangible-assets-tables", "lang": { "en-us": { "role": { "label": "Note 5 - Goodwill and Intangible Assets" } } }, "auth_ref": [] }, "intt_statement-statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-6-revenue-from-contracts-with-customers-disaggregation-of-revenues-details", "lang": { "en-us": { "role": { "label": "Note 6 - Revenue From Contracts With Customers - Disaggregation of Revenues (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-6-revenue-from-contracts-with-customers-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-6-revenue-from-contracts-with-customers-tables", "lang": { "en-us": { "role": { "label": "Note 6 - Revenue From Contracts With Customers" } } }, "auth_ref": [] }, "intt_statement-statement-note-8-inventories-inventories-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-8-inventories-inventories-details", "lang": { "en-us": { "role": { "label": "Note 8 - Inventories - Inventories (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-8-inventories-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-8-inventories-tables", "lang": { "en-us": { "role": { "label": "Note 8 - Inventories" } } }, "auth_ref": [] }, "intt_statement-statement-note-9-leases-lease-costs-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-9-leases-lease-costs-details", "lang": { "en-us": { "role": { "label": "Note 9 - Leases - Lease Costs (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-9-leases-maturities-of-lease-liabilities-details": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-9-leases-maturities-of-lease-liabilities-details", "lang": { "en-us": { "role": { "label": "Note 9 - Leases - Maturities of Lease Liabilities (Details)" } } }, "auth_ref": [] }, "intt_statement-statement-note-9-leases-tables": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-note-9-leases-tables", "lang": { "en-us": { "role": { "label": "Note 9 - Leases" } } }, "auth_ref": [] }, "intt_statement-statement-significant-accounting-policies-policies": { "xbrltype": "stringItemType", "nsuri": "http://www.intest.com/20240331", "localname": "statement-statement-significant-accounting-policies-policies", "lang": { "en-us": { "role": { "label": "Significant Accounting Policies" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "7", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-7" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "8", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-8" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-4" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Subparagraph": "(c)", "Paragraph": "2", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13", "SubTopic": "20", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-13" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-4" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-5" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-5" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481549/505-30-45-1" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "25", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479405/805-10-25-23" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "55", "Paragraph": "37", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479303/805-10-55-37" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "50", "Paragraph": "4A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-4A" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-14" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-20" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "38", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "30", "Section": "25", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479668/805-30-25-6" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-7" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-20" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/235/tableOfContent" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/275/tableOfContent" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480581/330-10-S99-2" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/470/tableOfContent" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(f)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r118": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/805/tableOfContent" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4" }, "r121": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "05", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479515/805-10-05-4" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Paragraph": "1", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-1" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "38", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479613/805-30-35-1" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19" }, "r128": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r132": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r140": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "SubTopic": "210", "Topic": "954", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477220/954-210-45-5" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "270", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482989/270-10-45-6" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/275/tableOfContent" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-10" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-1" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-2" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-1" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(n))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/280/tableOfContent" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-24" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481569/310-20-50-1" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/330/tableOfContent" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-1" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-2" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483080/330-10-50-4" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480265/350-10-S45-1" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-2" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/715/tableOfContent" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(o)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(p)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(r)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480126/715-20-S99-2" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480266/715-60-50-3" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "70", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480794/715-70-50-1" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.C.Q3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.1.Q5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.2.Q6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.D.3.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 14.F)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479830/718-10-S99-1" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "730", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482916/730-10-50-1" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-25" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-28" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-4" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-6" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-19" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-20" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "808", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479402/808-10-50-1" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481839/830-10-45-17" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482014/830-20-35-1" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481956/830-20-45-1" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481926/830-20-50-1" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483013/835-20-50-1" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/842-20/tableOfContent" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "12A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-1" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-3" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481435/852-10-45-14" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/855/tableOfContent" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-9" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-11" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "330", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478411/912-330-50-1" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483154/926-20-50-5" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478859/928-340-50-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "280", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "940", "SubTopic": "820", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(1)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-17(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-2" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4E" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.W.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(h)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-3" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-12" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r718": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r719": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5A", "Subparagraph": "(SX 210.12-13A(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5A" }, "r720": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r721": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r722": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-2" }, "r727": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1" }, "r728": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478785/954-310-50-2" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r731": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r733": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r734": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r735": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r736": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r737": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r738": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r739": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1" }, "r740": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1" }, "r741": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" }, "r742": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r743": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)(1)", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D" }, "r744": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(a)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "38", "Subparagraph": "(b)", "SubTopic": "20", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479876/805-20-55-38" }, "r747": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r748": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-8" }, "r750": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r753": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-16" }, "r754": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-21" }, "r755": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-22" }, "r756": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r757": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r761": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r762": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r764": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48" }, "r766": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "49", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49" }, "r767": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-12" }, "r772": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482640/350-30-55-40" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r775": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B" }, "r776": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C" }, "r777": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E" }, "r778": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F" }, "r779": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r780": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r781": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r782": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r783": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r784": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r785": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17" }, "r786": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-11" }, "r787": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-6" }, "r788": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8" }, "r789": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r790": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r791": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r792": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "231", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231" }, "r793": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4J", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4J" }, "r794": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4K", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481175/810-10-55-4K" }, "r795": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r796": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r797": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "101", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101" }, "r798": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "102", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102" }, "r799": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "103", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103" }, "r800": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r801": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r802": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r803": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8" }, "r804": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "53", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479589/842-20-55-53" }, "r805": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10" }, "r806": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17" }, "r807": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21" }, "r808": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29" }, "r809": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3" }, "r810": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2" }, "r811": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4" }, "r812": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5" }, "r813": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6" }, "r814": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479401/944-30-55-2" }, "r815": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r816": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F" }, "r817": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r818": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r819": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r820": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r821": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9E" }, "r822": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-18" }, "r823": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r824": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r825": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1" }, "r826": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1" }, "r827": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r828": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r829": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r830": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column A)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r831": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column B)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r832": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r833": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10" }, "r834": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11" }, "r835": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12" }, "r836": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r837": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r838": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r839": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r840": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r841": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r842": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r843": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r844": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "SubTopic": "20", "Topic": "715", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r845": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r846": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B" }, "r847": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r848": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(3)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r849": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3" }, "r850": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r851": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "205", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483504/205-10-50-1" }, "r852": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r853": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r854": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r855": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r856": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r857": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r858": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r859": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2A" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r862": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3" }, "r863": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r864": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r865": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r866": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r868": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r869": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r871": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r873": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r874": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r875": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r876": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-2" }, "r878": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-20/tableOfContent" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r881": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/350-30/tableOfContent" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r886": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r900": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r902": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(10)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(9)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r922": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r923": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(8)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r942": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r944": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r945": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r948": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r953": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(k)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r955": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(n)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(q)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-2" }, "r958": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-3" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-3" }, "r960": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r961": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r962": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r963": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r964": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r965": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r966": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r967": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r968": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-6" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-8" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r971": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r973": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r974": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r975": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r976": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r977": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r978": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r979": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r981": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r982": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r983": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r984": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r986": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r987": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r988": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r993": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r996": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-22" }, "r997": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-23" }, "r998": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r999": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1000": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1001": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1002": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1003": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1004": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1005": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1006": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1007": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1008": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1009": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1010": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r1011": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r1012": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r1013": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r1014": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r1015": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r1016": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r1017": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-3" }, "r1018": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r1019": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-6" }, "r1020": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "850", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-2" }, "r1021": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r1022": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r1023": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r1024": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r1025": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r1026": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r1027": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r1028": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r1029": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "912", "SubTopic": "730", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479532/912-730-25-1" }, "r1030": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r1031": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r1032": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B" }, "r1033": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r1034": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r1035": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r1036": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r1037": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r1038": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C" }, "r1039": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D" }, "r1040": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4G", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G" }, "r1041": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1042": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1043": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1044": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1045": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1046": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1047": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1048": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1049": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1050": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1051": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1052": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1053": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1054": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1055": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1056": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1057": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1058": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1059": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r1060": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r1061": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r1062": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r1063": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r1064": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r1065": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r1066": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r1067": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r1068": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r1069": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r1070": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r1071": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r1072": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r1073": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" } } } ZIP 91 0001437749-24-015682-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001437749-24-015682-xbrl.zip M4$L#!!0 ( />!J5BC$ C(H08 /4> - 97A?-C8X-#(V+FAT;>U9 M46\;-Q)^KG\%SP\7!Y LRXG35%8$.(GC^NZ2NJX.N+<#M3NK)<(EMR17LOKK M^PVYMB1+;A2T:./< 8GM)8>]\,@PJ:1G3SWQY]@_F_=;OB@@PY&2@7DX48EXW)R;VU%8DKZX+4HBM.>M_V MCH^.GXO^\> (_[X59^]%MSL:5A2DR$KI/(57^TTHNB_WVU$C*WJU7UA7R=#- M*5 6E#7[(K,FD(%T($UU:0V],G9_M#?L)9N'$YLOA \+'9>;T/7J%QKTC^IP M&A\+62F]&#P9JXJ\^$!S<6TK:9ZFVK!]=N4S23 M3DD3!H;/H$\KZ:;*#'AZ?_1W,_'UZ;!7C_8>T'%/Q2X: MV$KM1J:@9.3[RS=GX\H2E*.2/A:*9H#H(.I?+BYT8ZH%DO,%Z#HH4UXAVV%?VC[H_" M%D*9\?E/8_'&.DQ+IMU'CX3C!UWT6GHX!BZH%N*CL7--^90ZR5.M?W(+W<:& M6'LDJH,T"]&8X!J"K:A\%>B!'2<%BA7!"BT*F6'("5NI(()-8SF,@4K-A,XZ6"!3+FLJB!DL%['@BGD)I O?\(_E^CDY:C?A M U3*:U1)5#DQ5Z'$ 7V-PLK:>=\:IMD[0 $,>T6YE7)C4K2!?\G>DFQYZ(W(H+.XBZXL2KX7C&#&-)ZR4HVGCX M>ZJ!NUSQQAV6:#0$@ 1;4\I.'^W)I"]%H>WP%P>(24X( ?K*7_D!]2XJV ,H6V^C2<0IN1$:1467%RVJ65TQ]#'J"9@KHFN M="61/F_: ]4-VDR/ ' QS#+K\FA [$^F\=6"!K@P0S6CED70>R4 =VJ!H-] M91#*UB!T/I.ZB1G+_J6BX%%;1UNZX\R] ML'\&0W EL5G6./;["FVO[5=9'S#"KSZPB\^P17MS% <;P@5 @WR])]>:BE>_*=W^&0QP\I M:#CYPYK=^,H@OT5A9YF)3 RKJ%@F97IKL'-MV^A38)1$EQ*L\W>%) Y@LPHW MZ$"TE>HFEM_M8"97L"DN/P!JP"R>F0N_N4NZA3?]W"B8' '=F/@^V3_]JOO8 M,UPNN0]0B"\W[WP-R!0A(&T1N.LGYR0_,JNG.AQY/780\1W&[47SL\+[D0WW4$?_]+WT>^?M]]\?%9 M,LK)L_0QJQGU?&_[UY(8M8D;[6V?Y9DK=/FX2K:OA]Z4B@IQ?D-9PY<%\4-J M+]K3Y&HF,HV;YJO]?YW]-.Y>G5V<=U]?GY_]D[^WKLQ>7;P;7]\;*XNNL_/- MP8Q0Z:XN/OS[_=)WD.#/PEM^P8H>?R8&&./G[E\!4$L#!!0 ( />!J5BW MF44QFP8 "(> - 97A?-C8X-#(W+FAT;=U986_;-A/^O/P*+A_6%+#C M.&VVSG$-I&V:!5N[+O6 ]]M 2R>+*$5J)&77^_5[CE1B.W96=QWP-@':)"*/ MO./=<\\=I6$9*CT:EB3ST=XWPZ""IA%]_./[[Y\]/?[A$+/#7AK<^P;SWW:[ MXH(,.1DH%Y.%&)>-R/!$?X=B;,WHML= M#2L*4F2E=)["\_TF%-UG^^VHD14]WR^LJV3HYA0H"\J:?9%9$\A .I"FNK2& MGAN[/]H;]I+-PXG-%\*'A8[+3>AZ]1<-^D=U.(V/A:R47@P>C55%7KREN;BR ME32/3FN9Y\I,!T?*B,.^,J>\:[VVU9UKMRF:2:>D"0/#9]"GE713908\O3_Z MSDQ\?3KLU:.].W3<4K&+AD ?0U=J-34#IZ9E6%C\?S]=OK@QC^!S.^_J-F0 .Y;6=]>7XUOGQ]^?)L?/GKVZ_EL ]%Q[\(VIJ& MRXYXU9A,&G&A=&4;UQ$9N:"*A0BE#(/[?K[^8=*Q^?-2E')&PM%,T1RL&4KE MQ9^-=("Q7F"\!F\*:\1K;"OZ1]W?A"V$,N/S]V/QTCI,2^;">P^!XSM=]$)Z M. 8NJ!;B@[%S3?F4.LE3K7]R"]W&AE@0)"A;FH5H3' -P5:4HPJ\P(Z3 A6$ M8(46A2_=@D4J^8&@=V5/C[$K4# $ FFQQ[ M(G(K+NP@ZHH3KX;C&3.,):V7H&CCX6^I!NYRQ1MW6*+1$ 2;$TI.WVT)Y.^ M%(6V\\XCWP:SK0J< M'K8H%!ZCQRZ%=!1C U^KB2;VH2 8J*5+UF MQ<I/I.-WWT)<^Z$$)A64V)Q-"?8 )DY4S[F.Z3(Q'VX M55DRQ2K;.-(R1KJE\66T.BT3\:0":\ 6;[7*XQ7*-Q.O<@47\0%4*C:1_PSO MU'@N #$Q?*P6D1VL)QB$:UE<5*.34%FC)9,:CA6-6!82K$AE:;6:XJ\)L2!X M!^LIO]\\LX&DR3\@:>>DW0#4[NF^,ZZ Q9G*&2[26R.9UZ0'U+BK8 Q)EU_' M$PA3ZDDB?']L#U0W:3(\ <#',,NOR:$#L M3Z;QOJ\!+LQ0S:AE$?1>"4! MZK!8 \,0MD:A,YG4C=4?+K;%)/KGBS"GY(/ M^"K"FS^L<.?KC)'\N1D7OG6TI3O.W K[9S $5Q*;98UCOZ_0]MI^E?4!(_S. M [OX#%NT-T=QL"%< #3(UUMRK9GH3"E>C_CF9)H;6QXG2TKI;^H:9WH$&>61 M N/I6WI:X!+T@71[5[HEW_D"A]Q_2$'#R7_6[,97!ODU"CO+3&1B6$7%,BG3 M6X.=:]M&GP*C)+J48)V_*21Q )M5N$$'HJU4-[$H4CR3*]@4EQ\ -6 6S\R% MW]PE7<.;_FP43(Z ;DQ\R>L?/^@^]@R72^X#%.++S3M? S)%"$A;!&[ZR3G) M#\SJJ0Y'7H\=1'R'<7W1_*PPMZU?NCIM26&98Z&GFPS> HFVXX PHHO&H).* MBD=%\4T%+\!+\1@M0VZ]C-__[/Y$BWF&NE XI$L'+J>8VPA:?-W31K>3B%:9 MF=4S8K8U+A^^[KSX^RVP_>9*^,#6CGN^M?\&(T9JXT=ZM81YZ M62HJQ.N;_/LU5?>.&#,/HR%/A?X]98Z"=(OV)+F:B4SC!OA\_Y>S]^/NN[.+ M\^Z+J_.SG_GCY,KLNXO7XZM;8V71=7:^.9@1*M"[B[>_OUGZ#1+\#77++UC1 MXV^J &+\-OPW4$L#!!0 ( />!J5C,E1BWM0, )H+ - 97A?-C8X M-#(X+FAT;=56;6^C1A#^?/D54S[T$@F,L9W4P02).,3G]F+[@$C73]4:%K,2 M+-RR)'%_?6?!SOM5UT9J[R0;[)G9>>9MGUTGDT7N.ADEB7OPSI%,YM2E=W^< MG(Q'@W$/M8[9"0_>H?XGPX 9Y50021-8;R'*&IY0<5$6%%:ED"0' X[-7\Q! M?S ":V#W+7LT N\*#,-U"BH)Q!D1-95G6B-38ZSMI)P4]$Q+2U$0:214TEBR MDFL0EUQ2CM:2YK3*2D[/>*FY!X[9Q>RLRV0+M=SF[7(NC9K]26VK7\E)^SLT MKO_YP_Q\'L%PT+,KW7\X8)XZ*%_5D//+#"*;+8+4,O&B^ M7+3E7 LUAOO'U ^B^>5\VNIA=1V$U]XB@FC9:JTQ7/?"WK0'H3]M+:SA<5]O M=5X(WL5R%?D7+Y;MC4_[)["\A.B##Z$7G'L+/S26GS_ZOX,WC91FT.\/_N_: MOQ6C;01#6D&M-?ZQA^H)PIPK.N,=M<$MDQG(C,*GA@@T/E:TV+8N*\*UV!"BZ1!"P^L8G0.)L?554L#(!BM5+X(J(.(.AI4/+ MQJ2&E.4HOT<.:=P()AEF17@"_AUR,]]0A"T*5M<*%3_*,D'"AXP*BK%U@72Q M:D&"5I@:6H5P#Y2:WA(L+,"K./#Y.@^Z(P"D8=O81Q+"KKAF"?%&%J6"MLKHI?5VJ2YX#+V&O'XV#+UGY/KPN$ P^]_EBPR"I[)LM00Y>U+84QQ4ZQFB^NKA]JAA;J[OO+" M*$QUE\5A;._D?P%02P,$% @ ]X&I6.Q91NNG P ?PL T !E>%\V M-C@T,CDN:'1MW59M;^)&$/Y\^153/O02"0,F+R7&L>2 X5 OP&%'NGZJ%GL< MKV2OW?7Z$OKK.VOSDI"[JM=*;14);)B9G6?>9^U$9:EC)\@BY^2=K;A*T<&G M7Z^N!A?]ZPYQ[6Y#/'E'_!\, Z8H4#*%$:PW$"25B%".\PQAF4O%4C#@LOM3 MM]_K7X#9MWJFU1^ >P>&X=@9*@9APF2)ZJ95J=@8M+94P3*\:<6YS)@R(E08 M*IZ+%H2Y4"A(6F&*19(+O!%YRSFQNXW-]CJ/-E"J35H?%\HH^>]HF;U"#>N_ M,!SS#$N;X"*L\8^+]L&!1Q,6#U>,".B870ZVU>*'JFV>_!O2%20MIK MQZX<[_.'V>TL@/-^IV]W*\?N$OE/S/@W7'TK&/\L92%5-,B\/P 1HO5 M^.[JUIU[OK'X_-'[!=Q1H#G] M7J__7\?^K6#\C1IZ@3 3>D**9EK"(U<)J 3A4\4D55>Z@146-)8ACV%76;DD M"JOE3[5L:Y1G!1.;UAD0:4(@8/:,3T"SN-95H.1Y!$AS/H([)L,$SLTVU .> ME1#SE.A[9!_#2G+%R2LF(O">:-R+!R38+.-EJ5'IHR4CVB&0H$2RK3&DL;5U MUH99&\:5")F *4^SO))M&"4<8YAPP43(:T8ZQ*"_TEGLNOA/2/;+5[S.Y M9@)+8_&4X@;7D:G>WQ#P'?!WMKA'E]?C'447EF0K\Q@8MFU6J]>L4R M+LA5WF1F9Q_CNH(*B:4VI:W9+$V!CE%)4 J(49!M9;L^%>]30PHC7JO6&2&I M*FT\R0ML*J\\RD[G:, ='F,"LYH^^MXGK;\[MH'KIE:;[??V)\K_?FK![FL. MMENONCZP?&TIUZQNW*FL';ML9\XY3Z<@$I*P0X$: MD/1E?OUV@Q>1%"B"%.10%E\2F;AT-_ICH]$-@)__]CSSK$GUY;/Q[.K,/]PP_V_K&]?V+;OWU^ M#MQ/@3.E,V(!!SSX! ^^#*9A./^TM_?T]/3^Z>B]+R9[A_O[!WO_O+ZZEW4' M267'CW@H7K(&SR/AO0^H\W[B/^XEA7M(,&L0"0%R5;5(2@M-7,K4M:&@6#$4 M=O@RIT&!?]D$)8#B/2S&-OOV_H%]>)"VI(ZK)@$%!1*41[/#8M5X< [W]^AS M2'G 1AZUL1KJ W09V(>HRZ3YLS.M( 0E!4J,AV%!#GA @_"]X\]DO?VCHXQ] MC_$_U#*#UH[VL'A$ II6YX0Y@9H-653@(V".NBH4%"N*!;]C$HPD?7A8KE12 M4;YJ7%1L$,Y%!7TH*52- GM"R'RYYZ2@7+F"C[2D4!TINZ%*\?O'>W%AOBI; MH0W&\1UV,FT\+VDO>>,.3DY.]F3IP")A*-@H"NFE+V;G=$PB#[B)^)\1\=B8 M41>LA4=GE(>%"KGBD(@)#;^3&0WFQ*&UT +#8EG2.K#9W!>AQ95-JV2+3T47['%;=NA(JN./=6Q>YJ'IF;RD.OYHBQ*/DN?SN>,C_WD$3Q$1^E3ZNK>T;$E7:=/1#A(9[6#M3<7_IR* MD(%6<]ZR[& JZ/C+ -UQ.W6._NV1T7OPWM(J2P2*+HZ4$YI0[VK!7MH6,?!E M$,!@>S21^M7%<8C75!QHXD2>U$I'A7+IN*E0T(1QUF&9YH(VE0F:!+ L:*4I M[. !*E@,EL?@H8=RA6&[OA/)'X2[,'>$+'RQ\5T4,TEE8&&['W?#NC5&S*!^ MOQEW*7\+?<5K*9TU\&_[^_N6;9TGM/(_3[EK74BRUG!!]O->B=82&U% W1O^ MF_Q=>B^2QDF-50V+V--O5]:ONF7R-%6HGIX=< =\C[G2/H^()U=HP932,+!C M#S:T ;W,=^V(D\AETOJW5'XK8J80<0 PN$]9@=]G.6:LKS$SUKUDQGIW%G-C MW4INK!\I-__3(Z6)\NPYP>=3&C(8BN!5@5.F;0I'AT9P9+V[+;#7 RM6;O8X ML/VQC1-GLF0Q;'TTZ)@"S-$JP&0%@>6/K9N,#^M=;W-6J@PT#82GN+Q]A-4M M$9SQR89A4DO3%&0^Z$/F+,^3=9'PU,.G1I5!Z#M_3'W/I2*PZ9\1^J&+J6,3 MX*FA: HZQ_K0N<]Q]-_6A62I!TZ=#2#!U!Y[_M.F;8V*CBF0?&Q@7X /ZQ+Y MZ*&!*N-^2.T#FY,P$K3H.[2&P:H^3:G\%UP%L\#Q_ "(P!_?@:B%BZ+ODFS1 M_=AQ_1[:032;$?$B#3>;<#8&+QVC%H[,'L(4:\_AA7$875/KC2B9PL*O2BS( MA4W,C)P=%LQ8IQDSUFW"S(XCY @4!!-F(%EK[R^H^C*EY1.EEG$U09&$3V1BE 0!AI'64WA]]Z84?Z!4/'K]WQ(.+.# &F8<6*>2 M@QW7_T=;T$?*X74<"W^&CG6+AU'8B6)W-8!FT'@ITB9C"PJ$2"^C< MW\5\6)? !WKW,1_6/X /ZRSE8\ M>Z3]#@^MSDVIN"*J%>?Z@;XM&9!)DI0!ZQ88V'7=']IT-O?\%TIC/=GS2#A3 M&"L3NJ_IW)3NU5$LZ11?)/1C$%BW"?U>]:"=HX5V1I0#EZ%4R[K1Z\IN3:E; M'F5HI,C-*UJ-A4/EM$W(]*E9%V,V M8677!C%0D9BK"./WFE]U_@.,=$B8![,N?0XCXFWBC,D2#8-8J,C:51P[L=Z= MQZQ8#S$KNPZ*1B%9HU!9B[(Y /VJC@LVC0KWL&JOW"?*)E,\H$@>X3V=4/0C M9C!Q!%,B%KI_1;1I,F00A.HH94,0VM8_$L:MTYAQ=(. <>M>,IZA=-?164PU M&+5JJ[LVB!AU&',IG=';I17JD;\%ON=QL!E#T!XC(^8QO$T+'T#E5,8&4%1-Q"!>U!'19;PH M,B8],A1*FPM?KDT+B^0-@&,E'8/X4 =7E_%QF_!37)OW$*E)B1MU3_3)& 2( M.EZ[,@7?NRV::LO[#$D!^!1AOCZ\]8+B)7:XQ@&U,$-3T::8,H@\=;!X%?+L M@HN3%($+%.9; "-W*?/65V2^MV.UH'"FX!T (!BWPRDM8&%L>_21>C!_888? M!I4F5Q4:=,V! MZD0=BM<"5;_X-&&K<+XC,PPLXUR'?SE$B!?TT;(9D/%$4NJQ1ZKJ\-4-G5FV M#0*Z[5TZRY/VJ10/)VS\ZRP1;S&-#S/Q;"E?_T*\X@NQ)2_ *P"^]>;J%H#O M\=T2W^-(;M$ P(B0_14O6^@S;I>BKP1='0X,HE*=\=!"Y:7D%-&8<6I=Q)SV M@&NX2]]E 9E,!'ZK"14.-BEI9\AB&N3#(/C4Z1/]DP2R=8Y?-'Y)R][F5=Z- M9C9L7M^]0<"H\RF*V]CZ,/G*LR'YWT;L2WWW!E&@3IJ4SZ&43J7TUJ!XDL2H M$:CLU:#6U0F+_$&5_I57*T7^!W-^8&K]M;)G@RI71_1S*D]^@(<0]*N<9?7, M<)MWG&^1^1E4EO%L46-J!@&B#K47 '*=<16G=! N?=ZF^GR;V3,/%9T:@\#Q M?L6]58L3;_VLH%2)'X50PET,A'DT#-%SQT_?".JRT(QE:$;*("8J;KS*,&%; M-PN6P"9(EN0'=R1+O4TH*3")294,O,\G,&ZSPAMN!C -Z!E$C3I FT=-$O$J M32G EXV,%>W-SF.GYOBKV7FF(3&#J%$'4'4.W?834R,=$L]+OG@OSRGAL1U% M5:/!^LVP9!!\Z@"J!OALZS3C79Z?0MY5M?N ?C-(Q)$X/0:WW32BWT^F_3-T- Q!\!2?(+OCCN MKVOJZH@;1%S%O2XZB/N1<)E KS=WS;Z987BEVI"800A57 =3]\V.?J&J^[D- MPTC1)F,.(Q6?-EWQH8\>'7HW?9F%AAX-@[BHB*A77BO6@T)'82N4N!& K*)G M$"P5@?0JL*R&4 \=I=J8"T_8F!'3>^M;T#,(G8IH>C5TACF^^MWN6JKD-"SN M!HXX&8^9QP@N99;V<6X$3DUY, BQBIAY-<2^T["X'_E'CE?%EM,>=DJ58_XV M/E^6F(_1BSVA_D20^11#'381E&P4=,TX, BYBJ!X->1D3CD^K);8M-&+]2W' MJG4*K.X$XC[O/0?N)S*?HR;EL^0)!U633-;/^(QZ$@06&07RP,"702@B.I @ M!>R$_SYU0'!_PIQK.AM1,; XF=$O@^7'S/-P1DD[P&^SA2R,D-PWX4?S+P-4 M./O$ '8#*P1VOPS<4-CX*_CD^C/"^!#*4)"!%=>=4\%\]R&N&\57" SVEKE? M<)N<;* WXS'%"S5N!7/@#[E(SWBOJ=1&DOC)S #&.F[?"9MI!.UI21^%1-S$5AE-Z3<0?-!P&080#^HXT\X M^XNZ^>5E[(FE5W^"A+EMY,F%GV>1P.1=OL!Q0+Q\U6S47I]NUXSU1G20>X(; M,C9Q MS^85F5UB5[C#+F?*2JK4K]\19:;\IBR^W-%YO%#!U3# $&VY[Q#OFP"K>1EQ M-X 9@&*495GH=IUT;1HP,SJQ[U;A_&VDYZ[XAF?^(^62:3SX$=^[$_..["V& MH*;6!F'ATI%!YR")97\ESA^>/RD9A(K"3KS]Z(8-06(1S:3%2A3"GL$WGA(Q MH?@(/_MQAWVE(C5NU5Z1? M7P!67+):^C;==6E8S@5YNI4]J.4LE+=G/$6E8>0..;A-X#N!%NB07SQ*(WI. MQR3R0K4\-2TV[HRTL3-%":Z2@WWRO^P#.HL]^) MD&O0)J.@W[BC(S'& T:G%+SH.7%H6=2*TH[,.F,JP"^3CDUYO5!5V%D?\1RS M>S#SX6U;;"09PBU^R;X_<4U"9PJ>7K[\=X 9IIQ*]G;M?CIAEY527)-G-HMF M<3)DE4@@2[IC,O8(:X9GK8Y_AH/9[FWW'6FT8$EP >N&\"67]\X&:'6=]K(" M3S"6QBW8A4>=4/B<.0\ XZ+]JBCKI"5.424SQ^D6< G-HDBUU3IAFRO97%K! M:M7\R2O26J4%:B5U(TA3S;U,$Y7BS.6''>7\D<%[C96(]T"=*?=Q!PD-AOP; M^&*$OY2%TJZ_7?)JBMEMZ2Z]%[ESQA]AL&K('2:,8'J' M[^+Z7AF+XY,KC+[%F:Z*N%Z[IET)W(%:!&X2.*?Q_T.>)$3Q2VM41O&)=TD7 MV=@F#;KF;=5++3>!+!(8M4(OU]\BF=/K@O&RX#1HF<6FO_O(=3TORJ$L[89AS5K6P MW>#!#_%P6"K"ZDI;@SZY7^N2./(%&O)[F#_)W!>E6$]MK4YH[@HF TIOYC(? M"K,A,IT9AP?_*[TES#T=@R_P+TK$I1_EY&O1LFO1HFH=LS&]=QB%KDN615G2 M28MR_?"5\-*6AM*S;O)->#!FU'-+K"\][B;WDKO@9OPPI?>4,U\ XV2BV-ZJ M5;.;,H97)!+4*\E3?MI)WO&PRH.?[66Z3\_:)(=/'M(3S;%,VK4[%\=#S@,5 MZT%>MLH:6R3/:=*D7JY"-^2F['\U$-V["Z3H:JT/=]XW&Q"A7'% MW(!S#;P>[A\>5.SC7UFCDT;BALXP[SB!IK!PD!L=@SAEX9?">UHU.^'J%5VU M.XJ=IG\]4#'+)*JO]_,26M4:"Z=47$=>R.(%4LEKJR[N)/YNJ9!)(G RY4U( M=Q1!Y834E6']HFRZE;LI:;IS^&:L&91MU*+K,LM,>A!H2;NJ;B@QF\PU"KQ-=MU M;0Q6H'P)KD-^$0E_3LL0KZ_8T?>X]N7MYAM;*5%IZD@VL@SYPQ3<-HSCE 1L M4+\3%NK>F5(WPO9H0?D;BEOU*1!5[)%"Y[+(=Y+ M!*8??T ?F$I/_@I62%C3H*,2BT?F8"I=KJ^JI%Q=J1L30_:U@_R=LZ="H-'' MJE]?%E62"R-.GXAPY3_)O'?')M,P6!RFN_*?J+C#'K*QV#B9GWI<;[/#^6,^ M?XWA+)#9\N'$:YIP4VUQSZZY[KJV&%E_Q'#-A?G:]#Q"((W6 SA_R:<U#84W]ZXXPXT% FC]MYB WWR3JX]R+7==_.8\[(P"U$3*6Y@ ML<7 HG'.'L&'!=7B&6Y S#D)2PMM8[UUTAG!V#2F?HHR+SWM*._/),B9@"%W M?#'W!9Y++,NC4;.;,D[IX?[AD0P4 -=0%R"VO"&_OEI7I?NP?_"_2GF6"KHJ MP>EL)*CG*850E755#C$C7A)[6Y)#5=9E.1Z2R4JYMJJITTFYDIGF*Y'W9>:2 M5]<48XDE";5K=UG6&_YWPB.83 _ M!TWD[QIVVZ. W.I/YR1"0A4DE)5TDD9 M_@'.T]2/ AG)D#<@W2^?\*VKU$G)%O<-&_AB;CP.9KOLW&:D6O$TOT>M.5BZ MO6W?.(7(K_Y 9-6W2-+-? BV;L V1/7MC'O--R77'-^ZWG=D')<^G[C)85TF M]C9'N?9#O 8'N9[6VQECW;E(MYNW,S*UGZ5<<\CJ^]^BL6SQA:.ZX6O3Y=:/ M6,,OK+0;PZ9$MGY4&W\NJ=VX-B>S]2.[\O-W[49Q=9=;/V*Z$VY-Z^T9AT,; M/*@9$2]RT<4F'*RW0Z"4.#*OCNO[.=Y"@?$0S=%IU^<;';,GBILYT)K'-YVB MKS'#%TGN(-=^'3=# <^Z-4.IS1?#5,'X&QZ(+V37>"./Q7MZ"C MO&1) 5CVL#! '%8&>.D0SJ(C_-B2 7VL2_),=QI..P M/#7F7M2LIB[Y M13.PGU@XS4>P64"2CU8GNRF2=OIH,TKJ[8VP)@@;=[<](_4KO%+X*1Q?,#EU M+G[K0DRGAVT=#TU\5#3:'JE/;$]^*3K^#P >-)C1:AIOX2B4MHY*L=H$>5IT MN(6CI?F2+-??"EGK!,Z8S G_\/4$L#!!0 ( M />!J5B\JS\=U! -@* 0 5 :6YT="TR,#(T,#,S,5]C86PN>&UL[5UM M<]LV$OY^,_!N/K@= MS[*$BE,^H8-?CV\N!]%@[^#]P=NCSX-OMR>#@[V#'Z*]M]'>NRCZZ4/*LM_> MJW_NB*0#("*3Q9\?=\9Y/GV_N_OP\/#F\4ZD;[@8[1[L[1WN+EKO5,W5MTF^ M[+#>^.UN^>6RZ<;0#X=%V_UW[][M%M\NFTI6UQ &W=_]]?/EUWA,)R1BF>)( MK&B1[+TL/KSD,9;(#7!\,2M8)GM(; M.ARHG]]N+IX\DV4YE?F;F$]V%=/W#@_W=U6[7: YIQ.:Y5'&^I5!_/)O!U0G/"4@G("T+&@@X_[L C\VCQ M,$7KWU_B6?E\"O(GV62:TIW=-6[$)(UG:<']2_B[:JXP]\>8DECZF%-X*ZJY M6]";\KB!?>J3_Q[/),NHE"=\R MX-C?DH8W_0Y"(!>MD0"$GI44'9447H M4995Y)"U^>RYO>AV\O'\@TJ6U[E8RI\\%'[T.^#CS *!0F!GEZDLN'1 MV\[3IZL[G\%K=TWF:@Q_S&VFX3OBLN=E0/?DK>7H*1U20);

]+>3_P5O+ MSXL,MD8CMFQ<2,GMF&2?.$\>6)IZ8"V:ABWF\CVTYV+NA9O/GK6U7/O"L[BW M!;3YX5O+UP+%"E_9PP-+C<_=6FY>"SZE(I]?IP0PE3N8J7)/>.!HX[.W@:N+ M5;[^-:0=\Q'[-*^<:U"V-GIPS;MV).(!%PD5'W?V=@8/E(W&>>4V+L.>WJ/\>R^)\K%D>O/&[E M^,6R_,=7J6ZQ]<9R^=VK8+?SNJ-W$'O?":<#"$U \WS_E><.00YH]AY\)^SM MZX0)S>C#5T:W=NVOF/UA]SFO+^'OCB/\WD4I)9+*"/@^$V6X&A^6'SZ)87,+ MZG,=WE<<7SOZ6H7N78)@47HU5>&Q+!M=JDWX U7(4K[YF(YE@?ZL9D:L][R/T]V![=Y=%P!GLH^GPKQ;,1$#HIF[CM(MT?X&L?V99"W$ZR MO:D#E-P")34)2J8F?LVQ-0(^+_EX0Z?5"W,UO!8LB]F4I!<9=D_5Q9CA\;+7KQK\0Y\T]WYVVS:77O96/X8L2J*5NVDUG]W MVT>BQ_.U;;0DR-,N<1FZ?,XR)L?EV;G\0O.KX0V55-QKGJU-9=TZ3-[ MZIKT0^,->8#WDPI&4CNF-W;L!\\O7/QVD5T+'E-I!ZBYIU=$1;3&DK@EJ[_. MIM-4!7IDR6Y7:-XJ[RVU(QB0:&U:$ M0S(9F\!U*+,AV8OH.<4J-W_64@S\Y2E+5*&]:/EQX7R.B1Q'PY0_R&B6D5D" M^!.\V>0XL ?[J15EK0*W+K)8J!.94UK^O,BJ0&!XRX?PE@,VDI[3^F)IUIT[ MJ'*F?>97DE(5W#AAQ8.MZ-7T?1%R8?G(!8GS7U@^/IG)G$^H6)Z'K0(KIX:*\FK$K\5?^O9?Z"[LH%B_-E5O#3#]9:7H.> MY\GF&Q6G,U4-]NQ1Z?P1O8&U^&PXI+'.YNV'"*]\7H35 UVPOMR2Q\(L@I\G M\"'3%C[!=O.,92IHS HIA]]36HA[EH 8BYS]47RNQ8/OZA53*1I7PW5QN92!.$UGW))TD^"SZ;0HWCMLYQEH#6KF ZP730<"XG";>82X]&9^X> #EGES[)W6,B4/NMV+OJ%7>K_07%GTUX+?LX0FQ_-O M4ED4YRPC60S+W!%8N?U['S$LG0.'^-3"2D:NFL&=%(KTD?2<=? L4[/D*K MN.! M8:_B4(@X)V/ M*EVJ;@;+ [-_UZ7N9;!0GP(W]+#N#?0 M<,.U^=J?2**9$*[I]W*ANVCF!&X0MHO61GM_ML$PM(G"10/?2C=@4VR>0ST+ M[^!-!\%KX%T/@+;!#>S* O0IGX,<^.:!*=YAG0>X@[-MF'4D8MSY5$@9JFYX MVV53;8%[WT7"FP]5'=SZH4IZ-U$;(:UU/>52K?$TM(P5AX7Y.YX=U]BXD%;[ M8+G8&($7DLX(EHN-<:@K+GJI.O4V&E5W!44D2R*VO*HY(L6I?\TG;N6HVC_( M5YVJKBCU5,!*%>C(Z26[W[QH&S2)-D@5V\UO9J2>*'TQ*UPGSU'W"1WJR8(5 MI%Q*&FZE=QW&,]8:Z<$CM.G<*RZ0)5=4IJZAEK.RFA?>E9MIK M &O;>-6 GV@&_%*7B!XE$U4&+E?+2&;F0OOTC4JJOB_9C.B*QIX3L_ MM0K"5([*D]+O TO.RO%3!FRL'=.=/0)G866$':687X"82W6XK:(<> JDC6 9 MH@+>%JV1\N)/[(�&,]LD!5-,^0)/05!28R2;@:%,G2-DS(])N MV$):)7SLL>IFN6U*GQ=%X)DYQOU32.N5;Z&Q,,Q#>K?J]YF\!P='4&\5DBT- MGH\@/-30;2KH&(@$FRD"]9S!%'1^LP/R(3W?\F!%I3^R'/![F:YRG2XY=>D MYEZ)7FD(@LMJVE4DUWG*'_Y%DQ%=9% 6=]+?T#@E4K(AB\D"-6!S867[!X7I MW<"\]-U6I/ 2[6J'ZJ4G/20#MB/6>%A:/ =;'D0%^\1D, M/BTQ7,URD(9,.;LUX!U'"0'I!G$P/2RVPVD>(TS[P'7*GJ?R=BCR(1D:';"G MA;!XUI"'L(K_/F.2E4SI*/? '.>K33X#CVD M"*1U<98+XO8U:Z9-UY[2!8S$:?6]5>^PE("%E&T$V]K,9 @KNAM6I^GMR7][ M1U*2Q13,:ZH6L*K23C0M$NI:.VXM1_?ML74BS]-FXUE%UY/:.V1QC;VNC)L5 M651>)8IZ4Q??&.K*C3:B0'3J \>SBIDH&.8^OE',)K.B(@*F)J;MQ0I=#]\7 M;TS^RH9#'L=1_")-DL+J)NDU8:!33\B4;9K R-9^*3==3-7C15/EHQM6@[HV M7JE9 M][])JD]+LNGK%U7I^5$U?HP -,T\TVHH1FI^B6RZAH.I\2UR*L_J"=E&C<2F MD@3-'?JE?ZWVJ06(^EY>D>@O:#"_-.A^?M,2S64$_NSE#U[N,DR]T->,*M%V 58SOR]/)TR%7)H[^*6_\:[8OJ^"77L^&#*%(:#81X54!HWV[F5L MM[ZPF!? 0%:\]8J;#03K6_9&<:,18V[LE>[:BV@HU.A<,+7U3K"ZTK+W(TBPW%CT](])XRDTZ#=,:7$S"%DK,JS^;)HQJUB]D M,Z]6AI9^*58E@F=B7C"P]#";U$13\[!B=!94URL!WD)WA!"5@T;GD]>B%E,R,M%6Z_7P_I';-'B?5N;L5#]*R&I&H-O=]U^:CI& M"TG9X""A/-LAJ2 D+(NSJY"4% X=)J<@)!6%0V495A22UD)/&SH-(22MA4-G M'TH9DD*SFD%,!@86G(][SW'@&MV_@2KL6DW=T>+A65%;J+*V5J)G7=UD3K6% MXUDYU\'I,'4A4.5MO>RWQ>=9=Z,VT:; [4"U-L;P;SM5/A9]PXGJ$XDTY:2$ MM/+C\#2&P82TY.,@H7( 0UKZ<;!L(Q9"6N:1$]Q= '6%(*SPJ>M[%%]H?ZY _L;/OD_4$L#!!0 ( />!J5C= M))S4U5P *TH" 5 :6YT="TR,#(T,#,S,5]D968N>&UL[;U9<^0XEB;Z M/F;W/^3->69E1BY5E65=,^;:HM6M"->5E)E3]Z4,HL/=44$G/$%2"J]?/P#I MFR0"/"!!\- %L^[*D 2 Y\-R<';\Q__^NDJ^>:(B8SS]^[_1-'_^H^$I5_^IO[GD63T&TE$FI4__OW;99ZO__;==\_/SW_Z^BB2/W&Q M^.Z'[[__\;M=ZV^WS=5?9_F^PW'CG[^K_KAO^F;HYQ_+MA]^^>67[\J_[IMF MK*ZA'/3#=__GT\U]O*0K$K%4S4BL:,G8W[+RES<\)GDYC8T0OM&V4#]%NV:1 M^E7TX8?HQP]_^IK-OI6S_LTWU=01$0N>T#LZ_V;[SU_OKM_.!4OS[V9L]=VV MS7=:4G<3J"CX67W[?Q[US#=KN0TRMEHG]-OONA,UXRO"TFA% M5X]4M"2O=@SGA+(53=5)B:K/M:55,XQKIQC.B=% MDG>?Y)?C: G>4?N:5/4M227-\C_%?/6=XF/?__CCA^]*.VM2+/-8:* M OHUIY+3;_G1CHB$QV]6*MNM=$;C/RWXTW_*5936$:5JTIFE. MLL?RC!59M"!D71%&DSS;_>9 X?87_[Q@69SPK!#T0>Z4,SG^E\ECE@L2YZ\H MMNCA%<'][D#(XT2OY3]?3W5SPV'H?2"/"6VB]44COW3NVU M-U%_8(H3$7_#A11-__ZM%&^KB^)O:L/1V=^_S46QGXSM'=128ID+O@)M#=YB MY\LO^\2GD5 JB"9&PYO8M5\@!L%%LUPO3P<'L%4@H@_.E^;EO=-J;>HOKZZ( MMK_D4N#XFE\FY;Q*P84N5D>R!!CQD>;1YHB9^)[G4]7,-2#\@%LSR /,__BN M1F!T+ /_56K'BAHN&-VO"%#ZK>WK2>XU?#M(O$'B/6F)]WJ[\S6;Z,XB++ M^8H*6Z'8\;@H_Z&D4%IN/BF,SKE8E>D.<"D;.%#_XK45(;W( MU1/Y^9DBX2HABQJ)L?;O/SU#:[[J&FXH'_JPW M+&E;^J+QEDL1)OG_V5IS2S.[7G5)FVDVLI MWGW];[K1DJEIUS]]?+7BZ7TN9?_[)9$S-2WR,A.;I75"([Q3_Y178EG% >6' MU0K7BAR0YC@LRKBH\6C?KCY[N:)B(9?FH^#/^5)NLC5)]2?&V+IW6J]80C\7 MQUKZ&P+?-O%"E3B7G&[!A7[F:EOU3MMU&G,A#U\IH);L^)P7DNEMC%<-J)<' MVJ5,2.*.[5W=,&402C-/Y.5?FKKF_5.W?V2)DG3X:YK MU#]E*Y(D9T4FA<-,?Y'4MNJ=M@?R]7JF[$AS5I4 :6 ^#>U/RE<)H(DKD\B2 MIWJ>K6O2(U7W-"Z$G(0//SP^L+Q6M]J9.JKY(R M[S>K1Y[4D%7[]\%\@._&1P:R0P5/69N5ZME3!K9U#BAT+#*IT8_*]0:%B%$D!("Q0B/JFDR;$/189/-K$-BCL@ M[3FM)N9IQA,V4\^G1(\D4<^)1-F2JLSNN&)[T;JT!T5%2HH94^W61/U^27.I MH286=:01&C])$OZL-MD5%Q>\>,SG13*)8V7FRNYH M3-F3\J'6QY5U&L,KRB,6>$O$5)06A-EO)"GH+14E5]1@L^@Y%***J4^*?,D% M^[<\Z8U(=#V&17"=906<^I>MO5)^*X>A'6*=8 >$U[]1O3L\@'%O MX'A%.XS6"C@09_^F]M8XG1S%_NWL'?%U.(?]6]KML '%:V_F]>HIVR@E>2%H MQ.<17],JB,WV^07S()Z*P4*("&;N4S9SO]VGZC=2/)V3R@7VZ<49WG[)))S+P0MMZ^!*KNN7HT+.Q?V)/ZC8%70GCY@ZU"+V0K!Y_(RFLZG;ZZB5X3K&_HU:DK&,IV7LHF* M"YO.RV0$%6?$4^,1@'<\%3R#GNE@+.^)SN(Q8S-&I'Q^V &;MG8/E3N#LZ M#D"@MS)O+5IA1-M\JGC[FV=TOAXKRP3L>CH@57+N.!<\9?&#_**>,%.[[G:<3.1' M-ASYTV$MY0__+.MM4+$F(M\H0:1F09N:]4[C'5T7(EZ2C.Z%PM?TU!Z15GU/ M \V@=M;Q>R#N*UG+;.RN:X.;RF&M[X>[?;*_VF^W-WO3RYIVG8>QTN^,%-LI MSTP6<$B?X!L)[X(&[P(Z((WB$.\D>6"":L>N..AN'*TGP8)GH[.+U*\'!RL@ MJ&QT;G;EB7@,8,H9F@W9CC'R#BH\JJWK_.X(3H+@) A.@EZ=!&U43[^.@Q\C M"STHLL9"'D=(:_#+>7G?/7(TI+_U4@R#4!@G8.W*-C.@^T2JJ%#Y5]N ^L9Q/!G0@70$6_HIV]*[FY:J9Q#NU2L( M-[QZGM!D%6MH/CCM9OMD8X>QTA^"OCLAN)*+;9__,_&17RAEIN;N@3 M30QGPJ[S4+@^'6Z(*T'_*&@:U_&E%CV'07380HT1Y* ^PZ"X3M=%GI6;Y,=: MMZ=%CV$0U.T.(Q.SZ'DZB ;ESW7T96]9E37&QC%.&R6^-;U33U4*EBY@K 30 MU2NF:;ZD8EOP_(:11Y:4-APC&%"?X!(,+L'@$D0'!*Q47SZ'^#GXB3M8OM9!1[O9D[ MU\U"DW*/?;/W>:V=B!/7SI*.;J\#Y"_>2CM#N;7=2*:==JZCEZU"^$$(/SCA M\ ,+$[_?J(._1"OR+RZBN,AROJ+"-MI V]]3E$'#]T-TP2E'%V@R]>3!(MEU M*D]C44ILUVG,Q9H+%7BGS]V#]^H]X^R3VM+GNQVMR>/3-^J=OJHL\ L"M EQ MC6W'0>V@SI1S+@6W-*\*P=ZQ[,N95+B7*R*^&+U%T&ZG@ 79^FSVY!EB&*#= MAL;R(+]O!^-UCV$1P',1;;H.BTG-L-V!>=MCO B&/>W;B^$-?49',+!7"(RS M?@\LNZ-/-"WH9UI?R1C4-KC@@PL^N.#1 6E0=+B5CH$)F(WPQ%O$ M) \T7J8\X0M&I2CSD8H523>&M^PL^SH@MYR%*Q*KL,+-=7K/T@61\A;5$PGK MX8"T6\%CFF4OY^&R$'QMH [=S%M/[-8D-Q($Z>#6; M3X0@Z:**&I9$?>8I.?SFZ%%EDP&!$WBBL<'O18+21 M"Z%X.CJW2Q_\Z,1B%6#Z!KIM"^ FW-X12O+UB7^GL6AXO(0_8G3Q,JIF>TM:#. =PO^0B5Q__ MC0BF[H.V("P'<@#DT\,92>L3D+5_=_#9:9QS.:+\PP? GFQN[:3XBUA]EHS; M5.BEKD7O94C"$^WHZ1VVK("@,Y;O+#NF>AO:A@/2:Z[D8&@Z)IJ'?<5(WAOP M2B8-K;U3?K@<#3M;WW! >E5*D7&G-#4?(^WAO:YND4LLI=,YF*,W-1^<]ANE M3-173;/M=@I8AHV*VVI(ZN@V5.8R-1V49O/L&QN/C>Y!]\H=?>+)$TL7+_>R M,0H?U"?$3X9R22$2$1T0-\_1X\4'4!2XK6".$9]!%.0V:C5&;$:AA-N) 2CQ M-0GSO*W0/-H8T2:]'I^GM8ES<$N3-JHP #=<%$-HG*L8,2#XG]'PHQ ?;XTHQ,=[BH\'AM M$[(_?=" >=AHO@+I;:@) ?;O,,#^?,GH_/(KC8NF+J.;N7%SV8J=X59S84_K3IZ*0ZZ7;;3N?:/'!3F5+;WFY) MKDGD!A';V,\!F:]6[C?Y(TL7U^F#[$7_08GI&-GV=4#N_9*(:LO=DDWII3HD M%6^_/Y7?9V(V25/)%D5&Q&8Z_R@;Y1?$E 7B=F07B2M+*G_Y8SFUUV4E=?G5 M6RD9&3)98%T<$+>=D3,U7]/TB!U\HFI+&#:-74]WI$[3_R)I(=?L@VSR\++ \L3*0/(BTU>]+."))I,(F,[_U3^SO+E'4U*J3];LO4#-TC!'48X M/62#AI%.GHF8-<0:U[89*&U@.C\_4B_+2:6SCA@0* M*P0[S:&\VJ9K;=(UN+U7ZM45K S!AN-2UV00&HTA[?6-L-,Y<,A]LTX%:NLW M9'W/P8YYW'%-G[/-&RY7LOP#WT]GH+7J\U-ASN"?&O24: "5Q$I0\9).TWKE MK<,(R! ^//.."-^,$-)R3J"L^5;Q- @/-2V&H-#(LFK;X*;2AB.&9*R0C 5, M"*G7C+E/B0CCM-0Q,0[B'QC1U.IS'*9)8<+3;#3D#BQSH\UDTJOMZ*)A-#N. MM_$=H(K2:G?D,(0P.]R(!G,KNIW8Z_W&K8V *#?S($("AC.!:/\ S'&C2Q8# M.@'1\(PNH@6'A!VA.OU]25O(#[:+18;&=(TVC4YKY$%S5LVJ6O/=U6RK1758 MVRBNR ]BXPJV#N%!![%!'6H7VX8N"ZMO4:EM-"B:B7)Q]=C&[*(!#SON?41& MHLO:ZN D.,I3]3<) MP A](/P_CP)^#WE'?L](2&,.:TIU_B.C65E?E!D?K0L1+ M26>K=&?8:+[2G6VH">G.[S#=^86[ZG:[.P[!7R(4)&0<@H M"'&VH?S]\#%?)Q=Q.9Y@O!":9O#?@Z0<5)KWNPY-"T:28"3!9B1II95X-H+\ M># 4/-)4?BHO+03[-8*:/YK&\67X@-$13![OT.3QL*0_??_AOQNKVM0WB9!EG%8/(X _;=AW.$ MPV1#5!8&=UL3@X'(\2HV2-?!^!6,7\'XY2A"R(W*Y-DJ]E.TW0D12\L@Y/SH M5$)-8L9!?-G# $0$8]@I&\."$>B?]]4)N*-K+LID!+"]QZ)G4-&#BAY4]'&J MKT%^#O(S5OG9^@KR)BIG;)&R.8N)_#>)8UZDBKYHS1,6,YKM_P&7FVU'[%^( M;D=1D*A/6:+6>'?/2,8RE:5',Y6FF%=*[Z\9GS9Y8DUW+VTP63%TI)2[JX45^?9!G-(>O881BOHOEDS]5NM[RL M0;MK[N"5_K,BDZ)!EIWSU2-+J[S2:EXU]#=W\$K_.NO^7M%=IU+6HP_D*PQ,4W//M#_)N>0"N!!-S;W2 M?B/9+:4W"K_&5Z9<,JJ"2*KZH5'4H#& _OP;NVH)-51E@*6J]J'%M%MXZC!1<$"?P M ,M]\9C1/PI)P^63[?5BU7?TCA70S1.<*L&I$IPJ)^]4:>(%W-Y^A0XC@'#N MRHB,+KP3!MZ-! \$[Z]DJAWX%E( $+&_"JEVB*$F72!,?]51[6"ZL^L")Z+_ M$IGM)@*JR@)A]E\*LQW,EL94(.J_($/MQFL&!/]79.!;6C> :']!BA9FI(;* M(M@D,6M;-A0H5JD+ZI6#XL0F8'F)78!.#E99K+/]$CH!6*4TF-<0BA*K"&;E MO(:"Q2J(=7/;^"%5QWP7477'.W$[)- M0WB2HIM)"&)R$),!J1F3PS:2RO.5JD)Q?2A&T23YM!S%;]B\.G:T\E$H&]?V M(%:_.?)EE/Z+$HA0WHQ;(O+IO,9["1()_7QT(,5JZP'YMT2B7G*3"OS._;-' MDLYV%EAEOLFDRD]GEBJ7TZ\$92PH8T$9"\I84,:",O8>E+$>+D]T88?-\^%3 M"D,7F-@\/9VD=[]:^T_1G# 1/:F(*XEZ'W+5TDT&'^E'N$9M?I+G'**!>VZ^R4X-<6 M,1MZ87T'Z:U^EDY)ZY$&0MQ@Z[1$W6JT09!STPI=%;F\:ROE59<%0J^EP^8F@[@=U/ZC[0=T/ZGY0]T]/W>\BTHY(O^\@"8_0:>Q$*@3B M]I=';8.[I0X Q.PO=1J.V;W(Z]=2]>=(5+4[(C4#D>+R*ITXBYY9OHSB(LOY MBHJ6!JMV@WNR6W4A+IBO3ME\U?UA ):1Q4)(2LHB$O-M>1R0-F35-RC)04D. M2G)0DH.2')3DTU.2.UR)?H7HOT9L6Q*N=74:TQ">!.)F$H+8&\1>H(]M6R'Q MO!!BQX=LG&J0[D'X#<)O$'Z#\!N$WR#\GJ[PV^Y6]"O__A(E99G@=J*OIKA/)"^$_"\0 M5>N1@@ ?!/@@P =.V/**;+V<7O5T?Y\+T\.H]Y.Q6EOK,G M#<7T\:"@G+*"TIB6-"URN5G267G^\IR*;#H_%W3&S!I)QU$&0JCDCSU MMM8#%:L+>3 LG0MVPP0=)>@H04<).DK048*.+U@EI6:??;E!?BDX+HH("=,H*4&?)[S-/G^3>H[/#<]/W M:HM53V],XIP]01T=788:2&.ZE >6;RB]I^*)Q;3^CC=V\DS$[)AL5<*I6F-5,[GZ M7>NYZ?Z1H+L'W3WH[D%W#[I[T-U/3W?W+'Z-6LMW+U4 IP-G>0HW BAP"C!5 MJNBNPWFV_?P4;9EDQ [/3K0T^4#&\F7I@=,2##RG;.#1>+C+\BF?7ASU8]=U MS9_]1L_R=%$]G5.6>3G;?*1\(*)H 2F\[8;Q"O.;:+ME>2RE_(8BI0D MY[NZ*.U .QAQ*.M'Q:_NZ%I5\TD71\\ G6VV?[0P<[09S2_RBHA:KF1L@YM* M9PRTD\UE][S4EK2LAL%:]0F6KF#I"I:N8.F" [%C+QS$\T=GR6O!8]$9B.K7 M@S=)RJALE&XV8S^F2^^;,IB7@WD9D> M4_5JVJU@L6+?N281"-3!!6')G%37A<&RJVGCXO-YOJ2?B/A"\^LL*T@:TWN2 MT&PBT9?GS$"575<'Q)Z]?6'][;OUY/'- ^UU+]2CE;TD46GJU^IR]?6E^.[W4:-4$]SL- M-(/:;>NHTUML&UH/3?FE_%>^N99BAY""1Z88&IU-1F+HH2'*DWUXK.9XDDSCF15KIOBH]):$YG/ M^\VZV![S?7&(G1U/,Q6-[;U2OPT1RQ[X]@K:K13-2G%! P+:S:_OBR0[2?XS M6'9_B-:3'X5+O1*1>\NFPNBE*W+0-=*_GC,WTN M_Z2?:YO.&'"5;ZBWA%7?UR^JXE%>8HR(S=%Q-<5&-+4?S"_^OIS(31H/;ZVV M8D3;O.MX^WMTM#YTD-:+SO\%WXX<9*%$Y9OMXWB>B)/=\@9!MV\MV KO8L1& MN9\=,^!.6]J1VS;$C?08-Z(]EJ<6-^(O?@(&"6C701]19[M5=>G4 $[%STBGPKEY'S@??\8_'[U;[(%3]1HD;=D1IB2=]A+.FY''(ZO^/Q4E7- M$/*&+GG%="YYVS^X^*(/F;3KZ20XL-S-)1?;/D)Q1]>5QJ*N'/EQ)6#(3R0? MI;"57Q7I+)-B"55Q[K4(7 SH!-@33K10\'I%W02F0M M\9OB+XT-'1!RF= X%SQE\8/<;OI=:6K7W=.9B?S(RRE_.AQD^8-6O[8JN]IH!DT;D15\WI6IOPK+BYX M\9C/BYW:F1V._.^"E4*XSH_>OGY9D7/!G7:2/OB'NRA3CH!)'E%2H MGS'^6*\0?],92*.XP#O=S)B@VAWG4*\";^2"L5Y%LX".RHOM9E>>2$P-3'E! MLR';,4;>P;Z!:NLZOSM"&$T(HPEA-'TXF3JIYR,-KFG2XD<60N/:HCRRX!IK ML_3((F:@1FZ_+M$?(W((8NKH\P2-Y9= MQ&0M!?IF'EQ1:<83-I/':E8N@0JXTKFCS$T'H57KM6EN/!9ZAW4K"4K4\S#R M@):\5]YF4K'*-SK_44/SH4N>A((ZH:!.**CCNY3*$8H[FB@.5[XOU8 =/L#0 M^$+!H% P*!0, WL@"1(6UXP*D:0;45D$, "!=+Q92VEDP@3&RU3V"N8B X7-5.FN(YH#(* MMAHG]194*!IL(I?.6NTW-.^G:$Z8B)Y4G1@)BF2%*/_:M32)];B>0O9:TA7" M]TXY?*^[.Y8D91G;):6Y"IMNBB-I:#XX[>:(GL8.8Z4?12C22PUE&Z?_0L#> M!^V?%U+(3G4NZ>X#>L5_)?ER6:[L;+/_YW\R2:&(EYL;>?4GAA-EUWDH7)\. M]\V5H'\4-(WKN%J+GL,@ND[719Z5T_MC;82S18]A$-3-JY%Y6/0\'42#\L4Z M^K*WA]P:8^,8IXT2WYK>T5A>/_)Z@K$20%>OF*;YDHKM!7I4+-8(!M0G! J% M0*&]]6 \@4)@98?;JQ88<5J*H-S)[81\(AK%UH99,$I6HXVCLI;KT02HM%FK MIHUNO+M114+TO\%/)/2JBU8^BKW>S)WK9J%)^<6^V?N\UDXDM,O.PHMNKP/D M+]Y*>T&YM=U(IIUVKJ.(H1"4&((2WTM0HKT#PZ]'_2_1BOR+BR@NLIROJ.CJ M20>/Y\F#;DE/\)R?LN=<4WEF%T;Z2>V4\]U&>44"H*4#4A[H5Y)=IYED9:4 MJL(7Q9H+%;2GK\H#[]5[&9>7,Z,ICJ-OU#M]U6.V+PC05IEI;#L.:@?UG+DBXHO1.03M=@I8D*W/9D^>P=D/[38TE@?Y?3L8KWL, MB^#P9IRN/ JDR[ 8U(S:'9"W/<:+8-C3O;T(WM!G]/,">_GUG)*$9MN0ZL^T M_JTJ4-O@GP[^::WE!:^[LD%LYE82*R9@-ELJBLV>Y/[(DYDNV4(_P;6<=IN)7(-98]W)D3GXAS&&*H0[-W M8<(/;VDO1;5U.TJ"P0$<',#! >P\C1WB&?)[!3AS;,,MC'Y=U[]$B:H:T-5C MW32,)T$W9>$N$BN69TY;;#G*Z2-%44 BO#<4WAMR3_EU&@MU MBUW0ZK_7ZT94D[.K;%4J0$"O#PC0U'YQVXQ%I[C!6^@<] MVZ?V=HS=^<9TFE_2=8L ZH,'Q63%1<[^7>JGEU_7-,UT MP25MAPEA/?[#>IS3J3S"T_F1%&NXU(QM0S!2>'7&.5KSCN..%$Z,R!L%2&XO MKHTV0@FDYJ!QC-N?OQ&^U]('/SJQF"28#HANVP*X";V%]9:^H:! M:+$]L&:)S4?@[X?OY47]F'>,^VT8Q5/8+XB*$/4;HGZ]1_VNRBUWPTDZ60A: M;ED#(8VM'9!T(0_*(6OKG#_1E*3Y%?M*9^=+(A94_4J0!;U34U)'9KL1>B.] M_$IY.^Z?$+\JU#RJY@_\Q=/BCRR?$3BFUD,[!WLAR/,M%8S/FJE_V]8Y.=?; MEW+E!,F;^U+.EA3#+EYR%#V!D-[.2;[AZ4)^=E7NTV,*5#/]F6P]B', ]TNI MA*F/_T8$4WIG6Q"6 SD \NGAC*3UY7*T?W?PV6F<!EZB9F5%=XL*GI(+1J*_HU-QX+O<,6P1)TQO*=!\E4 M#4[;<$!ZS77'#$W'1/.@^^/E%6/8'_J& ](K)Y).5NJU>Q#5;YL/2/OQ[7TY MG],X9T_TD%T, @0<8T"4JA2#\40T-1\C[8A.M!)+0-0?-QR0WE_3(J.S,RX$ M?V;IXIRL):^4]Q'\D(-&\([P=ZILWG0VJ53LXX-K0 7HY3FSJ"+ ',:N:>4W MPX.E=#JOKEL-F75-!J,1(*$U-1^<]AME!JNOT6W;[12P#)OA5$/<)_*5K8K5 M&]9H@:]I"+\8>;HH(ZPDI]1AJ&GBG<9\2\#K H$UM.J:#DJS^108&X^-[D'/ M;!D22&?9E>"KZRPKU"M6TSE@E\,[>L5S1Y]X\J2XQ$L>8LKB!_7QFS^FS*YJ M'O=,3YOPIF\9,O1"X>V*X%'ENH',QMS.8(L)'\"XQ6U-%1CQ&90&;F-0Q8C- M*#9Q.T$%);XFM8^W5:]&FX789(M&EU#0R#FXI3,35:"Y&RZ*(7G+9".0AOC % N4==/H'0Q8W!B:4PBT18RPTH<;:PP&J<7E MV>L8Z8LN2[ E\%;1P7YS[4(&=LC /KT,;%B((3K^"LQJ;1T#@(ZOMEG-MT%Q M?B4X-TGEL#0COW=!3PMF$?P'Q(LM ?M&&[4&!(0MQ]H8+0C$]%D"RAD;')0]T7$(@*! MH[.@P#!*0.!$@0-(+\5*/D19SN,OCT3.4R2;JRN^-+9%ZX2D78N8M!O=5W&3 M+M2%HB?OL.C)^9+1^>57&A?J1JG*^(I).BM_?\6D/!$SDFQ_K\]$[S!,7R!J M/RU)NF!/3)G/;B6S8C-5[6_>*TYM>';1IJ,+0G?;=CK75D8V/1)IV]LMR36EC4'$-O9S0.:K ME?M-_B@EP>OT0?:B_Z#$=(QL^SH@]UZJCM66.S\2((ZJ[YYM#DVV%2,GST3, MRO_94EB66\P.&LH-?Z;B3HU0A]+3)[%.SJ_KM>_)>?O)(2?G\H^BK#6_4W>S M:;ZDXF%)TNFZ+.G\40ZA+#J$B=](4KB=I]9?'W+*).-Z5/XL)8@DVT765G+P M\2FGD['[_(&X[7>GDO,QN;735 ID(B-B,YV7RW-!3)62W([LHKC3DLI?_E@R M]>M43:4RZ$@=S5#M"=;% 7';&3E3\S5-CP213U1=1H;KRJZG.U*GZ7^1M)!K M]D$V^;D]X:W&Z;THU /+$ZE]2)%:JA@SJ;AKJFT9V_FG\G>6+^]H4K*9;,G6 M#]R@?W<8X?20#9H27/+\AKSQVC9>J=SIN?=4/*FGAQ2#/WMSN24E-?)?JG1[ MS!\ DI/]#G/\NR5>>OX:OIG[S-,GR1)I)41F#US2??QW MA>Z#[RDU$C',/"MQIY+#C4G\C>V] M4O^Y4)^>SO?%W.^KV#<=/VUL[[EX;A^?&,<

PCV75:6W5\J,^?R-S^5E[A M@\UM_>=/IOP;E2,:J:KK3-)9RJ>55W' M#US]:EKD64[2F;QW*OFRIRFV_3RNNF8[*WOHRD5Z_'DI/^B\]Z9S.+6\Q& %K6@Q! MH5' J&V#FTH;^244'.T,Q.S3Y#[E>XS34G?(.>A\8413Z[?@,(\!)CS-X1[< M04R%7\0.ZW?IW5-H:@8U[#C>)NH+5262=D<.0YDNAQO1$"B#;B?V>K\=S0G0 M58]R,P\B)& X$XCV#\#M[+?TC:.B=X#P330\HXMHP2&I:JA.?U_2%O*#[6*1 MH7F ?FLW.;SAM480-&?5K*HUWUW-G@=4A[6-XHK\(#:N8.OD"W00&]2A=OF0 M?L4!!*)2VPQB-!/EXNJQS?-& QYVW/O(:?-["_NYLS2^9"!4?R6%0,R]0X(: MFK5U<;8[%QQ!L_PN9J-M]07@)/1??JVU/V(SK9=>#9 20RHI&'>IBRKJG(:*0C2_[13X@@&C&IQ6STDK&& M1G#R-"$N7EZX8>(;JT3U3L$T;H0\5+B<_+T0KO1?3V]T(6Z M\/1"LZ'[Y)Y>>!$&?;O=+.82L, N0]8EOF!9K.R)M>44^QC:;VW,RJY*9_7, M_=5["Q73'ERZ.'H)R57'& MXI/CF,.7IH=)D2^Y,-12[>T[_F>K7#@3S!<-_-.7J=<%Y226^XN*\GN4\1"\:'VR0O B4A,V3-T8:="B$]%MI-&'#L2W,<<6UNBD M8PX.;-99WUNDG[6!:61A??U9X$<6Q=?%*._9J_KCP;/X2%/YJ;QT*69=_:FV MX_KRI+:C*_A0WZ$/]4+M/'5BTURPQZ(,X)=;92N)B$\DCY=22#G^^XNX]CK_ MI*LQ^X/WB7QEJV(U25-Y"DQT28)V0IG>']O;1QQ,P,.2_O3]A_]N?!BUOI$; M B:K1T&3I)$&;3NOMEJYFE2(EY?8#2./+)&G[SPA6<;FC,X^\S0N9#OMBX>M MQ_&-UG16E;PBJ/HM$9OC1L;''MT,BFD>-,C8MA M-EYP].,_9DWWA/N!1S,?K8Y)FY&]SLB=Y%^BE+D!D3_FQ@/3;8RR:6H^1MJ' MC14*L07V7@I+R\;[\C4W,!=N>YA'ZW^&<%ETGNC&->$P'0V5:]/=UL3@F7:\ MB@U:;O"Z!Z^['>+@=7\-R97N/3+WN@]CY,B\[CW8HT?J?7>N:(_4;>_8(#52 M][YK.]3(G/A]&*I'ZK[OZ*;P[,G_*=I*21%+RXJ]>27I=7+C6PWJRX??@JC@ MP#]E!WYG4]XNI/2.KKG(E;#_NES$*[->Q, @!O91:6%;.^ORJ[Q96::XS\N2?*XJ+31])PB=0>@, M0F<0.H/0B3L3#,;'_1:1=!8E6]LGHYGZ M=;&2?]Y*79;"J9-O>9)&'=(:Q,]3%C\U61Z39$XJ$[4^PT/7QL'GSXI,LK L MDQSJD:7E-PZ/MERKY[G8G"D.-"DW]&2[OR?I[.:PK2?5KCZOW!S'?XACR8&/ MF];!&XH&9--W])L+^EB;+^7AR8&%;FDV!RB#^YT&FD'CKNNHTP?L M-[0>A'(G?(5D2U5C7S9Y(HG!]>/GH^.=QXH_5RW+XN(^YE'[T=.81SD*E3M$ M]O2R*QL^/?8Y?2D[J'"53"IG!J/0(#2!2 _DJU[2]O_A MT<[G=9J3=,'VC?=O8'SD?/;,#G:N'J<63,.(9_E)MN=BXV4V7WUKM+-VB"8< M@($V?WRT\UJB.."K>GB84N-W1SN;MX*OJ<@W*B0XWVHPZV.O0H\SVOCM,!ZA7_,ZC2TN&KPT'>'51A"WWL5@R)ZB'^),2?G%[\2;V(-++4; 3&E9%E;@_AB1II M:K=_M\A(<[\]&.-&F@_NTT\YTESQ :P[(TTI]VQ9!,[2+R<\2Y;^5J@DZ$_? M!%1Q&3:^#CIEV*1G[YYGZ$2=LF0.\2A#YPF+/.XW]Y.=HL:6NS)E@>PU]ETD1+U763";_X(S7DEH3< MDMYR2_!&SI\6FI '<'*1!/L[>7M''[]LV4"OJZS6(_0(CV"-$>>[$X1'L,A39$>X1HCQ#M$:(]0K3'\$:ADXKV M@,NX(PW.:"ORXK7*Y4OYV[*Z=\3GY4\Q$6(CERUZ(DE!U6]9NB67)NR)U@W8 MOTFO%SH1V@-[Q!F,B<&8&(R)(T<3C(FM*+_>L\P;Q3)?AY)>?HV38B:9;(/1 ML>TPF+"VMO@V4CJJ-Z)JHV80;V#@3,8.(.!'N=C3 X4O.KO80X4MNK0_T%. /8"A#8 MF$&0F9;G15Z(TL2Y1Q#1K^K%2=J7U=CBDU@,PM8D!UOO*=MZ^S2@'/.2RVJ+ M?9:[Z>&9)D_TDQ1(EBWL2!:#(IZ'.ZHVD[P!IO,KEL4D^0$84 MF5>\<#,)KP=#COM!?EEG+^HX&G;DS]P=[L-8P4P9S)0HS93!!!),(._*!-). M0AFUG<2-V'IZ%A3HM3U2RXD300V('5LI1A?2N5]KTB]10DE&LVA%\D*4)2!5 M_%OYRR@YU(5L:3EJ.[PG*U$W\H)%Z)0M0IKHOQLJCS.=2O%5'N5T<:.VRJY^ MZN:!G]%;PF:3>4Z%1I/O.(I7%- 9Y=?8Q414V8\ MM('>-)97U!H:-;@:6@?S:#"/!O-H,(\&\Z@7ZXBK"W:D5E$W&L)([:&=),J1 M6D([:@PCM8%V4PJ!H+&\^^C$F /$C.TAQW;6'2!8;&\Q.M"0@,BQO:\(TJ'\ M.BT^?"\%P,=\%\/YRGC/TX4\:JNJ23NW1?L/>')<="4PN"[>H>MBV,(%F<[3C"=L1A0/5>C58W1O9PC2=!!::S<:K/%8Z!VTP,"-9&H/ MDJD=OW'YVHI9TV0P&C_M6?(=76^%H>G\5K T9FN27*=0OY*+,?'.0I.'JB.P5QK+[%SGK#6!V, M6H/'6'V'#O3>D7D0'5HZ_#IA?HKFA(EMR>05)5DARK^^J;5\U*S,K7BB2?1C MI&Y%)IO)X>0_,S8KO4SR.N^>=#( 99[3I^$T=CK/-WI]]GI"LSN%DU6<8%"\FM>0)LVEZ1^-"J&=RSTC& MLE]3_IA1\:1$_^MT7>3RSUS>)O+@JV5YC\"3'$Y>H]HJ,D/3 M,XK9SS1PR[$S ![MB1^'F"EZ>7HCK]2Y8C=?T@T6;\VIW_&K'T2?[$!2OMG8=_M[,6 M@\?S9..UI"=89D_9,MM9.;S>[I^-*DV6+>E,O8>K'F28SN^HXA%4I]U:]!P& MD?Y=LKHFP]!X1YX_R=,M&$GL)KVQXS!X?N?BRW5Z*[A*DFJ+U-3S24$"'5_!(8P*MQ?:1A@KJ97R_YH@/'Z(LY_&7 M1R(G)9+-56GG*JIJG9"T^F/$UZ5%J@S)JOY(LJQ8;7_;LDB!^R_[JE[0%^7! M&!*,(0;U8?),Q.Q!?M$0YU7;QBN5E_+T\0VE]^H43-?:>@W@]GY5M"41]$P= M[/.C'$ZY*I0?YW1VP9[83)[L.\E&=%J? MK^^.?S9_X^K!3F7Q]SV?]5\>[XS>L>S+E:#T6EY\0EY]ON;3]%UUU&;JW-H/(4#'H60N!A\ T%WU ?)F;/ M*MM(74N>#2\C=4QY-Z>,U'WE2]_"ZR2*2)S+W9]O/+B%M-]"Z AJH#6X?H+K MIP^S;Z6"9%=_O.6&=K YH^75<,ZNU]4QWTFL%H=:EC>9[[^\R/X[OM]T]M=O%M>WO23F1-?BM1#\;KZS]_DG.+;].WI _7ZN#. M%0YS-K;\ZA#J8>^-MC3LGDKH0\@/#OG!_O.# ;8W5/$R@YZ#D!L<(J1"A!0J MKVHW(\A[BYSJS7+QWL*J.IF=3S76:A@S\5@CL0:Q@IUJ_-8P5JOW%MK5UG0+>XO]DC)OQA,V(U7XTO;76<3G44RR931/^',6%2DI9FKAX6%>+0?N M/Z*K$V$A>.N4@[?>[N?R)=CK-!94'OX+6OWW.IW$L619LUO!YS13NBU)KNB; M5YW:=>Z3X'N2T$QRN17+CBT+('HU?7LA5[V]*TAT&D,!^2W+H5TP;*8%_*'E?K?.E2.A_8; M3CK[E]SRY0VGMKJ\X$HYZ('OWCBEMT,:DBF]7;,(]9>:@T3B1?G_4ZEXI&]?]J'S_)W9VJEV)W]G7U![G' M7_[BJ&7U3*P$(S?%FFJQ9_CNA)7M.9Y+MBIS]N_R]%@^\J]]G3#/E_!MO M'J0\DZG<)9[NWC8_HW/91AYO#;06(WA%J%YS>V9),HGE;A,ODV(UD"!=O&(X M8K6WA.G(UK3R3>E;U5%)OI*DC2'B"-P/"1HIPU+)N]H >MMU>$Q*N7^Q?:S7 MRCS"P B-ZC\8)6B4@9'N; 7;*V9''C,\-VX_Q, 8=P]9VH"JZ3,PBKUF>T[6 M+"=)@S9M/P 6?#?J9_O3UM!_:'3*S5/)/'F;0];0'P.Z@UETDF54JPY:]L:% MK/72&8<8&..MH&LI_^WT=%73/5BV@SF&??N@6[!"1$[8YON7=%.8R%$?20WE@_P=$5N&,\K^JWS M^V#D?B!?E<5DR1-EW[_BHC[83@.^ZW"#8'_@VQUX5F0LI7)/9F6\P_ENY82V M,G6;(8;%N'-BJ(B4_#C$ XJP<0"_^([C5Y92XQMMYN%LG?>+IH6(JFY@B2ZC64(^)A(:&]+SKW=7FU3Z?7-/%+8[%>5YF/ M)%$7S57"GZ_3.1>K*MS-+(M:]@[E!$*><,@3#GG"KR!U-2^@J_/0 1 'F2I& MFN+L-SX8W;;P!O]HRNU#'=$QD2&FK, T146&&+V( H@NJ(" M/B>JORP<=-4%O$]KMY0M= 4'AKE9;9(BT+$\F,36-@8-G>S5 HAQ&II">]%) M4:XG0!M>B4XT%W/26 ^#]THHSS.8!$KZ*3//KBB[79 .CD!M?H MH8'TZ&H,M9N(+J4NT)4-B, MG+!I'+(,(#JCJ(+FT0FTMBA>VG[TA[]#\AC;F\^'2:+I.BSWO"IZYTP6E?!12?HM(%/[RNY@%W MSV^?I#RGT8?OHQE]S"->Y/(OJ1(_HH3F.175DR!E")]LDA.6[!>H^?F3]F/W M_P)*5]K"(RCO\!&43R3-YHPFLY=OR!Z_DZ!IXN+C^0TI!$T,WZYMX;=T?7ED MKDA<^FYK%JBYX8#T&E]N-S4=$\V#OA:OK-.'Q\(,^T/?<$!ZW[XS;:1:][KX MN&@?=+^4T:.77]>LLG>HU^)TQ0-,33W3K"2(Z;PZ?+7L&M)T )JS'273@T!4 M^R20;3>_6%A*=Q3M6!]P"\%[#H[H6HG!K1!I>H8B*_Z+K(0R'YV! 0&;GM! M8\1G$)BYC9#J%YN#$BU0C0&=X=BX%MQ&"/!L C87H>F^(3O5I7$$TN'&;%)5 MT&W,1B;( 08%E'NRVR6 85\Z73Z3+U=H7.;=D>IU$O M1N>V!.)L-"&A\T="@=G8:?PZ'W^.%ENW:"1)BF0WDBZ89!$1*<,B:G[3SA/9 M_4.>W)*N" T^RG?HH]PE4)Z1^$O"%WIOH;&A T*DO!'G@JOXO(>:+Q,N43+:&:@"-;% 7%EV'Z6P*O=\GC\3 M0:_W/*F,9C.Z/:SZ^D6U/11E;)(*L%VR=?V26/3PBN!*743TACVIX/X7TYI- MXKA8%670%>!9\/8#8<%[MOE$_L7%>2(O28.KN<4(6!!^%/JW?:#=L& YS'2C MJ[KE**>/=%!?O8'6SU3G089U\HIC%Z6IH?CUG[W2=IUN58U.'*_E*)B07G[= MYLDTK%;;83!AM> 7'49Z/X@'Y9*U=S%\-]MT'A27Y-YM49FZ>G[J*Y)KJRUQAV(Y MQGEI8S?CCHPXHXUBM+AHT<6-U9];#O;CH K0<<.],(2,.=R=K4WAZ/9J6^YR M'+H*]>R@W-=^N3.&<]"=@]GX?=%A<[#C808,?$%LQE4%NLW1H7*VGEW@^HO0 MZP 7&LZ"+GC/Q25E'TH!G 9_]0T=3(/97#&Z6'DV$2]^\Y<^?(@R5;^S?',[BH_*RD?K MA*21O#V5!U+]S.=1MG^>^V536KV;VK;(8I\T^"K&V#^&D!!UR@E1G<,-)M4. MH[/Z5R*V3QN_(KY=9[^XGHF8/<@O&@* :MMX3BC*\NF\K 'TZ&Q%8]?4O?B@C[1A)>OU$%.BD5/WXBVSW>4I=N;,.C;>@YC39*J M9/DG(K[0O'R"I7D1H-W\8JF]92="J =EROB-L\VAS?9AJ/*2.]QTZ4R]$M:8 M8=#GI\*PSLI3Z2% MSL15V\8KE9=$I%*\4X^A[U@2BS74&ML.2O4%2XJC\]E ]ZO6F#RS[7RRPR!1 ML4ZW@L^9KGI:38L!_)0WDH@K>56?5^_3RXUP>*#^C,ZYRDK9/W!^^57.K)0= M6$K$IKS%U9.ZLJ>\.)1*="WO%"%O%:.7L]$91RI.[*TCMX]]9OMSEH,II MKN*35ERK,4+<13!H!X-V,&B_@M190D#G/83A M-ECNT#D'@5G#.FO-2%--@3H=NBB,9KK?>NH;_$9(.(H5,@NU"AT+L0)J9=M% MQUNLH#88A] QFG;@=+88(#Q_N>M6\(RF4B T?SGK=BMG88@"(O67J&ZYB)[\ M$\!I^BOF:6IP9 A_H(3HL&C )4;D(I$ "\U%"%2T:B#_0:*'*FL!/+D0S$B M%9(Z62$QQ(JIBA>"+I5IZ(E&=+MDCN/&H!\9-(;,CL@03Q;BR1J>M-UOINKN MEI?X=*[WW@%ZA$B'>E]VS=1=2;F8+=+S0@B:QIL'0=),LG!UJ:2S\J>J$/MD M]J\BRQ4/V$WVK:IF)O^0YX(]%KFR_3[P6\G'4VT\PA TH)AEM>SG)%M>)?SY M/^EL03]*7J!^.9GGJMA]K(J(LCG;9NVDRJ#<:BJ[?RAXCD.&]UYZ"Y[&X&D, MGL8^_3G=+1;8?(A]7TWHG 7=IL6#\(/. P%U1@,%?6_F@;)FY@]15JQ61&S* MDIARZ]T_MI M.UFI3:H1_YV.[3LO1I2'E"3GY1&KS+(O+YBW=5".RJ1HIL3=P$$[#7'-(:XY MQ#4':T.P-@1K@S6D_GWLV*P1KD6/D5H?'+G?1V4_Z$$0]VMI^%&JPW\4+"O' MC]C^59:(E,^RM+0>6([JR2+0BJJ@Y9^REO]V)Y>/SDZ2.5F59[:V@KJQC8// MOWW@2VY;06J^^#6C\R*Y87/M2RP.AO0Z!V=% M)N^.K%J-BNML,9B+K(/[G0::0>N_UU&G?Q6EH;7?J*9MHN =+5_^>_-PK/&M M'9N^PZ%28?5+MK; 4M_#*P(#>]*]!_P*48L1L" TO?4,1VE\,?KDD0[*#RM: MD_IG1JO[]X,1)JRK9Y]#JU>ZWS@8.KS9C@.IQ9[M\J;[NT$\Z$D]T&L\MX!S3Z5MNO'6VC[J!S? MP^Q_#(_L.#P'(.,;NCT/O\TXR+& ,,(^)U8HZ-PH1"T&((63R]HT=YW@>XF!@:L.0NB M&&F48BO#]\BB$VUC@H8,.5P+/N=B12*6EO_-*T;H0,O @@8=PPD+L88@] M["WV$&] V&FA">%MKBB_%?Q*,4R[-PS;#S0TWFQ')Z3\EW5_-.C,#WU:] Q! M"J&LE%8OQ^\7#Y!)?/^%P^P:X9[)JG9]>TEIY&:M9L*?V.U(;95:7Q M:^_[*9H3)J(GDA14@B=9(;:%OA-&'EE2IDSO_C"+2'[<7G(OH?*JA2K7]4@R MUC8EN665HJ M9-533PO)8^6_,C;;/O=TLV6WFP94+4;RBOB""O94OII7>0DU<'3-!J)U]V#J M@_R\\:! NHP9PZ#G_$#8=9I)B5@)(G7J#7JLY^H3OD=W#;&3HN!Q(8N9W:B9*? MN92D0[9GB(H*45%]QL^T=LZANSYAN,U>/+]107^.1!5_%BDD4;QE?UGTS/)E M%&]K0F22[V1DL1#R2)9Y CW>8_A/L.^<# IY&;E MBA,9/J]IX^#S%W0NA0 ZH8)G:Q(;B#"W=$#*93K[-:-"3T%M PBQ_$'R(LE%]/38]'/R%L9,\V-G9-D#R_ZA^2MZN#N_W) ML%36G9T0+)Y8K+A,N5$@1 (Z."#L00Z^(HD<7YYQ SVF=N[(4&M0<>2&Z8&T M=T#6;U)[XM+;9BI1UZIE=IT%Q[ @R1GK!.HT=QZ#[:YMP6;T*6AEO M?F?YR!?-2 [C!1B]D+,7D7PJ&+V&B]C;G4/8H-F MD#:YE:"'"9CE%;;96HO+P=CQSR<"*[-;,U#HXN M7A"FQZ$Z<VZ: [@)VN\Q$<0>M%--@)T00M]1U:EFJWE.(ZK;O M2Q%$+@2T7&%(' ,:>: E1G-L#YK[OR6ZIA 0-() 2WR0H"@T,D!K/JN/"T$C M"K3$!HJ["8D&(=' #G%(-'@-J;.?SF],_B]10HFDI/I/%/,L;QME#QG*4]P\ MG)00"?\.(^&GZS+7)UW$6/5QT,HVU>V*E:U$1':O_=/ ME9P-(U5U?^^=JCN2+G1Q7F_^YH<:[0S5_!4/18,&T;P\>N>2F;\BMKGA@/2^ M>EOQ@F4Q+](RS_E6RK]'4I<1#7P8/%C??;]J'^H8A M%"N$8FD5OD&MUHWQ2F_O2]YP<8TR3$AFG#?*6:AL(= =A=S>W[0: M>EE\=#$UP=86;&W(;&U-\CXZEQEPI1K$1W2^,L#3Y';F$W3>LC;[T5:+0><^ M6%D-3;NW?*K2I[Q MA,W*HU[R=HV9W-QP #JU&<9-3<= ZZ!V]G,NUES>Y?0S3^^K"\&8=]O8WBOU M%W0M:,S*&9VDL\E*"M'LW^6/&OH!/;PB.#Q9NHL>8&DA!:NMA"6WS!F5US.M MVCV0KS2[_)H+(@5#EA*Q*?>17(NR3!Q/)&F+ZVU55/BBYQFL/G[Y=:VB MU;2H:UMYI51.&M\)SM7LFFEN;#^,UV=[[.NO.F#KD)#?KU>EFG3C4T:U;7!3 M.>A-N=>,=V5E=SO;4#4$U"?X!X-_<&]A&9=_L$%1X#9".B9L=N>7@YCJ*#VC M$$T0E9NT<:_563%-,@HJ#U?W,X?!M^HP)=#B@D6S3E$1O0B(EFQ6RO!*!YR^^JA4".$,AQ>H$<#I.FL+!.$&YO]M>1 MA8Q86^A'&C!BM$2/-!X$:*E&$?C!9O(W;,X4(XU(^4"2V\ /P >&#?P $Q@" M/T+@1PC\&$'@AX5!_>63<*\,Z77OQ?D.1("%'PPX@\&Y%IQKP;D6G&O! 16, M_,'('XS\P'-0YV(KJ#P;!,&12;2FW9_G#06+:_^.>O]Z^TE+=_ MP&$LQ$7-J9DN6Z7J;,6#CY0O!%DO64P2;:Y.8]MQ4.O]O]H([&DP?L.MF/_H[&D63!>-'0VV'EPO"*)2@MUL M0^0&-/"2-5ZLP2033#+!)(,FS') ^TW"TT7"GNAL%Z_TN(D61\PE(H(2M]:; M5I\1@N0F6FV"YP4-ML-R)\?36?1()&$Q MC;(E5=:#N!!"M9$T,SY3@2#%C,EV[2F-+F)N/ C==S2F[$E1(QD4C'I3%]\8)*^?298[IYFZ=TER16G6 MB +0:0@<]R21=/#5BI5T@6"8^_A&4:R*1'':X_Q^^>^$UB3Z:R]*/6"GPP\U M-^6+W7+%)(2EDA:?Z*%:A#Q/T[D^IJ?E*'Z1SF;EO4V26\)FU^DY6;.<)#I$ MYM8A:W;_Z09N4-=F."HGCUGIA810^[JM5ZIWR4WR)#VRM&0<5;66A:1,%95B MLVW%EAM&'EDB)0U5EL6X%D[&])N73;*E9)'J/XI-/LD[125ZY>=$B(VD^S>2 M%#KSJE5?S]GF\E;,JYPU2>!N"6)&=8<YSS^8EP"33//M+X-/-CO M;S/SLNF*!U,C'[#L[?E1A3F57Y_M"U!5+%GOJVKN,"S]NXF51]4"1'TOKT@N M5^N$;RB]HZ5<=T21^=" ^WE%\Y'SV3-+=.+>ZS_[?D2"I LFU=;]WKW\NHV, M:J#;IJMG3$]RJ;G8Z#=]71.O-);OQRUY,KN6V@I_*NURV44@H":/BHR)9+EFV:RC=V&PF)F@$@XWELR&I2?Y@Y^Z>?I M0CU:>4$?&\Q_AI:#4=PHA)D;>Z7[$XF74C$4FV-KE(D/-G?P2O_+!T&!LCVL M$P8L$E1 2#1]_*)0YLRM;-6X#J:V_JD&7U@-K0>E M'#;IQ@Z>HRVWJERC<<30TC?%:\)FVYJYDJ,?;6/SOK'HB2/BM4$ O?#@<9T M0\,ZX< QHCCD.RHW HMS.JNW+C=R*_L!/./+B13L9I=$J(?CLQ>NS3F+F1X7 MM&.(&_ [,T>*!CI7#ZCT!#G1?H>&DK MM%"7-;H=W JMC=D+'<]MA;B?X'-T3-KM;FA[__I[^:X57@OO&1#PGW$#KH]P M F+["VYL]I%=0-Q_Q8T;&L\)1/L+;K1M_0%0X02Y+ ;PF$.1(I?#S(\3()% M8%H#-$X,G;H (/P89E-4&3H%P0Z?30 4.NW #BHDNQG=8;2#:!EUCT[ MUY0 M<*HT.MG>#JI]#A(ZV;[5VD+RQ]%)^G9(&WVUZ"1ZRQL&$E>(3HZWE!+

#2!^A4&FA4#BS2$)TU!4#XRS@!<[8#.FN*'3YSJ0MT]A,[ M<*!B2.@,*'88;2/8$;(;JR7M4K$+G4G%#CLLV!B=&<4.9%/D/3K;B1T\NQ(! M![ ^*]KN?YU%?"Y_.M 8T9+(0V77:$>O95G;-I_P7-NV/8DM"MSV5 +1^,"' M=7\,90_-B"!]/*/XEU3/RUVT]7 \<'DM*;U=;29Y85]Q<;\D@IX1R:74$LCY M+XT86HR=1QQJ!AZX9H%*D[&O-%==I-B3F^ M/CM4^3KC.="V\UN(J^22:FIY*M>AMAHVJ.VXJ';_")4%]5+N/0C!&JIKV_@O MEM @N=^JX$\ITN6Y8(]%KGQ-#_R6-%54Z#[JH(G+QF-M;NPW,56QSFQ:Y%)* M2M6EHR%9VVZ8].17!S:K*8-OU2K&[_:NI.XD@8D MT]!/MV5_/.AVT3=EH]M"Q$LI#:GXP%98FT?#@_P0P%HVFSP3,9."\YP>OU=B M QXT(&[\IL(LW0;#@[O\XW1=GL?+KU3$+&NWWL:!,. MU93V[$O;'0TV+;MI M ;1Q+#2H#7RF$-J"J@Y&1#T#+5@7;"PTJ!TPKN9Q0C$>N](P1G6ML?U0Q6$< MU%1IH26A"P0PVYSJ?>0='OET7]FGKGR,W<+P5K8L="$/X)6T*%3@!*&:V#NP:*&YL0 MU]':"X6-3=)SXHJ&@L)RO(W_Q=02P,$ M% @ ]X&I6%"Z)3M3A@ HD' !4 !I;G1T+3(P,C0P,S,Q7VQA8BYX M;6SLO6N3XSB2(/C]S.X_X'K'MK/,%%V5]>CIZIG9-64\:N(V,R,N0E6U?6EG M;10)A=A%$6J2BDCUKS\\2(J2"!)PO!C98S;3E1$!PAT.A\/=X8]__Y^?-QEZ MQD69DOP_?O?V#]_\#N$\)DF:/_W'[WY^O)@_7M[>_@Z5590G449R_!^_R\GO M_N?_^#__CW__ORXN?L(Y+J(*)VBY1XOU+D]P<44V&/WO=P_OT07ZYML_?_O# M_ /Z>7&)OOWFV^\OOOGAXIL?+R[^Q[]G:?[;G]G_+*,2(XI$7O(?_^-WZZK: M_OGKKU]>7O[P>5ED?R#%T]???O/-=U\WHW]7#V=_3:KV@^[@'[X6?VR'GDW] M\AT?^_;''W_\FO^U'5JF?0/II&^__M\?WC_&:[R)+M*<421FN)3IGTO^R_KB[;<7W[W]P^(?;?GQ]N MI3!__)J-^#K'3VR;WD=+G%&<^13K J_ZO\N*XN@SAL>/#(^W?V1X_+>^V:K] MEO)&F6ZV&?[=U\:8WN,B)Q4>_IO^J!;,(!H+2/.*(?KM]]]\)X3L?V._^>L5B7<;G%?SG J+*JWV MM_F*%!LNWQLP'$TQ@])X@5;&;@E2U L^6K+FO!=9EYI*1#HG?X%+LBMB<:E2 MT.S:Q_G%SX^_^Q\-;$2!(P$==<#_^]<';,_7,B\:.D=%/();/>+KF- ;=5L= MKVM5D(T.D8DVY00A*!*G>W+"*@S_LE$T5E&YY"O8E1=/4;3]FO'0USBKRN8W MG*LX1]6_^.OC.BKP.WJO)Y=DL\5YR9&9%P6E.F:XOML?AMQ'>X[^2U0D-U%: M_!)E.SPOR]UFR[XJKS]O<4S/_%7ZG":4T1^H #CA3.]P-3G<&W[.3TH-"^U3 MG"5>#X;_/2;!-D[UH$ID^D=2X06Y27.JN*=11M6HBB-YA:LHS'57C92_:+SKY0BODKCB/X[ MBF.RH^CG3Q=;DJ4QQ;/]1]^%;V,^B!I@ M?U07P\X('F+1[HO@;O7R&PLDG$ M.N4=L').=9B+;R_HP=I$Q?Z"K$91J]@Q569MT_EML3H4#R]Z\;?H CT*S!!9 MH5=Q'(PW=NAXV-DM5\?E.XH!O9_*E#M\ .=A: *K#-\'R M'?TGX /2&6 M':3]*$^.$_1UNOP>TO*WFP)CJEMANK>5+Y??$-PIN/SZ\'-]@!C,BQ4%RDPV M#A6QA_#7[_L;W&Q7OK_Q'71U37Q_L:+X7#PSA"XV."IW!?\K2(52G!*#;HX-% (EK=87\:ZLR 87(&Z'36V5Z?50\,+[?Z2\_R"00C<4 M*739((5^I4BARP:I"1T!X$Z.G@23[7%U(/Y$#R3%B3(?T-D*,.DC[478<)Z@KIOOQ(J-Z#HS?)-]:9;43&%ZX[$?*9>\YU DQ MF(S8H[PU2$%7;/7VFXL$+RL(5_5_:I6ICD%XX:FWWU"FNJ) )\12$DJ/#8H*Z;'-W3#Z9TO^MMV?B]#]B'UZ\/\!@GWYK $="I MZ0 <.4^W/X>%8@%^(M&3-H@QL2N?K^++NNR/CY"/:[Z'%9Q=\-]?E/B)_YQV M,J @][K*3':O\R&(?FYQ]K#Y*' (F_QFN"WC5[8ZK5_G31V5:Y8+2(<\1QE[ MJO5Q4TN!3N&F/D/.TTW- >_F2TL?@(W\]DJ7O_-+#\RKF[F$5:81$#W"TZ? MUBSS/Z)'+GK"S*C:4/EE.G+'XU(>7#)0_9C3V',$9(18>%7- %T,72?Y5IPNHLT5\W MXFM?VQ/J2HSFA/84%$7 >]?10PMZ2S.Z%%)"M8,$*5!#W7PFZ$#AN@(Q1EJ MD:2#5(CB3^'09>]A90*T1WY26:):EVDB\5A\7G90:MBOF58#4@FL0'*8'*.) M48@LFN8GBF7MA.31HQVU$]5ZYR0O=#LWN'0(C^5:]_BJ7!6":%WOPV5A?<4.XSOMEPQR9]X$&*K MG2S(.WP?I!7/+ZT%P?$2!:.B+$V\H!VO]BC0L< M,;"37%%2E_#KJ:(XL*CYAMG^S..2<1Q_7Z)=GJ0E=PE0K8LLL_1)1&&L2(%X MR"O:B@1%_AO2+*K^6[+#B!.)_G575&NTHI-%&=K3A=%?91EY88.;E^?.7_^ MKC_'V2ZA.A_/$DTW7!>,\GQ'1VQY-=<2O:QQWOZ]^6548%3@+2D8RDP*MO.W MFA1;XJJMU+4EM?Z9T#^C-Y2 &<,JVFX+$L7KK_[@7\DTD"[$$IN]SD3OIA3> M+R2CT["E^J[NV ]Y"LG>_1BZOB@:J$AX#1&/;D*;J/@-5VA;I#%&SRU":!7% ME$"O/Q=\A!M<5X(?M/IAQW$6Y 8: MX JB3BI#^3[?561#* 0LTO,^X,WR+#97821$%O?/Z)J3#U#KC$3T20#^_[1M M.UL+@-EOG2@[9@U129@S0Z8B*#HL420J!K!I1MB%:)#0GVT2KW&RR_#=ZD-4 M[0I^Z.Y6[TG^M,#%AJ4:+I@OBY5"?D>!_R81]]!IH%:#)CCG]2]K?)C9?<"( M_<1PNF!(\;1-](GCA1ABB&,V<@)=60+0[2*V]L"/CKXM"!<81V&KYFJZRK0. M-?4A\(&4]?L:I6X<]"O0UY4V4E-E5]\=_W7+N@^G]1^2BZCJCJ?(%ICIBRQ" M:AF5*'F"3I+5_PV%F_01."&WK" D_(K](8% M0O@]I1ZYX/3)VCNUO"B \N/;R&C@>9',ZIK9CVMWA'[!&B,MT:17X#2R M@TJXH&>C7&&*(L]V93UQ1;W]\I8>!1Z_RO[!7+KJ<>FF$*PFFH$P"9MY!D+9 M7BJ:)XK9S$WK&)P=G&=(8(U:M)' 6^BY2H3SFJYF=FI&\]'.ST')8ETLG#',N13QLGCF6V$]Q5!1[YLANW4UI MGN!5FJ<5SM)GW#>A:P^.$RR#N7^LKF8Z N+$?WQ(QF _7=8K/'B4;]L57O E M?BD"QCG;6G5;.>3%*=H^,B\69 KWUHMS3Q,$)\?V!V#-[@V,J9L.O5XR.-%? MCV(R347D=2L>7YZB\<^I5TQ0CYB6W@#.7&M<*655\"AW4=1W0:EQ)]X4?L%E MQ=+_[WE*+T_2:)\>AM[1@B'C.[W3"&E?6E&8U4'TJ]>R#P!-C>-]\>Z\CT)G M=6BY1]UQ]0H17V+'.=RN$HE7IXJN$]4+G2&Q5':KB,7..B%0KRNAUXY(L)'C M:Y&_@BFEJUVU*_CM5E3I/T2 %7N1STOL1M_4 .A7E51 ;#I:X@U'EFF'+;+H M6B#[.A5 ';8PU^VT]]J;VG9S<$4=]OVX&I/,S:/S*5 E4@'A^I#<=-VJAZTU MZ(SB9E4 =:";ET1MNWFVB@*T90#Q$S$A9^@&VTE:1D]/!1;EDY@U5W\'\[G8 M!QND,?M-JVLW:BQZAS,Y0_>4TW2(.&,5:WV_=W0^0]=VOE?/>=(T"3C5M MH!C,]\\@&[E2/=L4\;O%$'\>FEG%OEAMZ$=/M;[.IV M/6[9WOTWY-)4GLWJ73@*U@=3"/OEIBC>7^FZ-7DB:6^#MGFET5:'. MON]39YM5W2$N2.Y* M@O]X(>H-B?]07; $OC*K3&15;@\!]"*R?V05"D0]JOH?U"XI)_K\JK0]HX): MG>;.^7735NT1&<,,']-\?NCD;OA:$0G_O'Y2(HIS_M33X\%;JWXF0/OEK#?N M-Q3>LKH@NXK^)4]8H$*&*^:19-C%]%)**] A N#@9^>NE^PSQ/K$+: M!;H[8$7/!L>*'9-+CM4DSP9L1\?;[L*WR?6IJ!]_3DXLR9\HYYS(7DDE M!T7S:^!I4(3BFN7/$JFLO/@[6]RK?_3792YB2%1GRM[;"UY'AE=)83V16ZEP ML:7DOX@R?B+JI\VR+:AR/-0D$LXI!G951A>8^M$JW[)>Y SWB^5Y$.T]_8!5 M^VW1/SQ)]HR>%$7F^+9'.*/T>%MUN8U M\)O.23^**9"$%+S&XPUA%N-##>: *1SEBZC6]YT?7BFD8,?U#*-I'M"#D?K: MCZ2PI%]_0(R"W^B4U1EDR]S\CC._WA%J16U07,0IZV/+6U&^27.4D"R+BI*U4$)K M1?3YGB4*T3]459$N=Q5W(I+[:*R.J6\<3*JC^L+55X*SUT5!G) 3ISK E5EC M7A>\C?>H.F"+HA;=@-5OO1_(TYJZ8?9[DB;9Q99CNL95&D<^+30)X D9;,<( MOAK[#;VY/T+\BS'H9!SCV+X;8H,OP-P[+H\P/7,/B-_DS#W-=;@6-P*=_[+V MC'@L0/T21]:>;9UCES]SM&O9ZM01K C+JV8Q@M-TE(F?:T1KK>)5NX-5&<%8 M8=#:W2] 1Z#&T0JG+";R-%EJ @H"!+G):0VT7@\E_:@0F#>5$-X%SS M!0BECZ26PM,32?JH34X@J2_A]=?*5%_KM"IGNMRC+;^" M$G5RC]S<)U\>U:_S9.(T?W5W.$ B>[G!HK59JE3 )WB]#:.T= D#[.EB9JH<_;1UP=%V3^ MN8-NIQSS*SJ#4.: GDNC'?\"C(G6]_"1*TWAO.3'\"=G2)S@^?K-B),%3=4=6#$NT:JX5VN7^X@F3IR+: MKEF<[ 5=8613\V7)>\OHL M#=1^\).S3X_1U#]3S[A8$MTLT[9< /S%Y;71:6IF_/%ZOBQ:@]LX]V0Z]+9Q M%N-@;9S%X@YMG+]@@U963O=R.T7S]0OMX/=,2VJ:T M!@OM=XI"^YV!T!:+@PCM5[,-)C$T33[P/U$ C40"!DCJ#72WO=N5:8[+LE/\ M^KX@-\S;=1T5>9H_E10_OL*K--M5TF+H\(F ]XT^0$]F40T-X1J+0T2]Q=P& M'ZN'W9OZF 61*0;\2NQM@[=SWCXW/4]/J#F$P%/.L0D.X= MB\WSYP&I.H->H#6YYA]&&T=L[H8WMF>/70M<;%@K(U'72U8F<& DD&E[9G3- MDS48M!7UR)@*QS! _$TPRA-$N%:6!^C(+PX1&ZB0Y?ZH+GF MX@8=U,%GABA&B*-T%.(W$6L3NE]JWI7Q37@UEL&UJ,7!-LVI"2"%$TC7/\/' M]2%J^E'A ^!7K_K)-]6BCC>R4X9QB_1(QQ@G)4MAN]YL,[+'F/N3[ND^KBE* MK$RE\"WU!3 "/H=$,FJ <2+$&[/*'F3(->[8UL$.3E/G5T M.??K3DC,W\8X/RJO?['&*-J0'37]R K%4;E&:;[*R(N,(+@A"*_5B;8-05@A MSS_X#_R$<"PQW8Y)6%QUMBK UCKYTH&554/P9%_5T&R;5N!%V#>JE%88P)PZ MY21%0ZJ7LJ]&QPSMT$@:";J"WNL?2JKKA?#EA-F2*E ZLGA\BVQF/:J:[XL0T. M?YQ0<+C'4WVJ@/AF(&_"^@%7:<&7P7Q*'Z,-GG].9;)U>#!0%/9/ZEIR':"* M!DD,+OK$((=Y2!LA+=&CEZ'>^DN:8'*[B9[2_$FNM%7Q_5#,7?3;:G/'I?D"6>Y\EM'J=%O$LK9EA1G4TN$'6^@XA(E?F= M]PSC."".! ^^O,TO:CQ0C0AA16K#/B JL3S9HM?DIP7FOTUK=9-BYGW M:;1,L[3:#Y=8T/D4: 6K@/ 4X=N 1PG>DC*M2NX?2O *4RP25, #@-TL$F:G MJ^ 2Q(C18C9B0MQ7XP:KGY=WK$@+S]=."SZ#+ 3.AW/,"DZ!7&9&N#LO!1/1 M(Y*QB(U_(L^#'6ZRZ(^PR"+>Q,Q/A"0O:9;Q5X"*+C1=9EBT"KE*RS@C)5W. M6+8V;!+@0=8#YOKD-=C4;V -/DVWE0-&Z%/H'&W@+A$[I)_.Q5F:1(I;N2;M M8^#J4K2'J>\V!1-ZT0A)1$:\8<('A^\LCCG=%6NWECR[] M(R O+<IYQ:>^O0F8"+Z*W:.RQ+C.WKG MT6.=/[W'5*278XXZM8^@)= ')W<>LL2AL\3&&CX2"(3WNRD2G< H:7COLA

4]Y(>-&Y\TN3\H''&/6%+GOFK8R(>16-P+L MFCO-,=36&CS3 Y#&?, 0M2C.4(LD3SMF:/*;@R-:5TKAJ*+70AF8^C5O:]YE M#9*HP#%YRM-_,'.H2$LFY'@1O/A R!4IZ+ .!_EQL[!M. 9*<^..=/ MV@PT:G%"-7#.R>)OAQ[?S=_ %I:7]1N;80"2A#C9!JQ+;.V'-S6/Y/LF=Y7EP5.TNHFBOF-U7L;:'T# M3D$?F-M]'GH-' GHJ &O*,V=):.KT)N B#B==Q3U!"NGQ>JGUICJU7:@FD2K M*0O4LYO<"F]Q/'$"V4E6_7(Z0(^*$S?)IT%[7AU?-P-%N^0#H>D79Q,ZMPE/ M-81P=;H&J$G4212(2P;K' T-M<(I?NH;G?%*R-)&@S25\HM)22-SW3%>XV27 M4>/[H?4ZWB94"*:K%"7SB]X0\#.NQC]VVZ#$Z7VTHZ@0/5&N]@XCRRH MT657]P%A=,"XB4)O6P8 M-+#R9#K7_'V %]87("4C4:6-OU"4DJ[JY:I.0JU]QPMR7Q!J,53[QRB3%LS6 M^10:D*( PI>IK8(+Q#BTO,8?Q1IS_,2C3_14(-8L:TVR9!FQ1EB8&RMHE>91 MAEY(\1O[*8ZV*2L1$25_VY75)E0"KQ;S$1-J>SN*]R1+XWU[4\R7)4\UEIR^ MD=' R>9U=<9DX"''"MK*P'$*=2/![S>)4,C'9,,C@[)&(\037)-WP_-L@H9 MZ5D#O _TVH.,$GII35^= VO#O:G.$:<106NVI-4JH8_4"UM($A(ZTM07) 2!.>N/.:_8SZ.!@_NQQ"A@?37%!?$D#$(_W&T3&C$ MSY;^%8NF<8=.[\4A$"CN)4AY2I 0P3]Z+$D,-L";]G*3YFF%W[-005[X(,&K MPV].ZR"TOJ/R/BJJNU73990*H24UO-A.*CE&_0 %:C!ND7->NI[C>L&1KQ^/@02T16P8[9LU"4&F(?$H8G_/I967<)!3]KSS 3/VMG M.B]^5MX 9 J.UCXZGCI:I<3Q&??)4MNX@XER[28M2\JTH^&?X]_ HT#E<_O* M\RL9=!2WX,.X2=3(3$"T,]3UY]DJ$NJ<7*N7C8'H[Z=S.6>$%AY<&3?'V2#0 MGOGXJ()]P"& #BUE *)$(7]>O8I>S+=E28_.6YD7KF<(U&O6FDLE]7=_; M#GBTPH%>.10)?7Y_*U'/] +/\UV4\83LVF=X^IP^-@QTC9]/YR5AN0>N_G5N M W?(HQV'*XH H+#8&[L!JS5&49L/'(F597QE=9)KB++V0TQ.5.GG3>B/>"3> M[3]$?R/%91:5Y4 0-7 6X+6@"W4;3"3FXNZ#V+XRWJ&.%Z((S:! M_M\FVZ9^B8_OA;\(T5HC7I#Z/:P)6V4]S2O60H+^=KN1^R3T)X#&D2H#\A9: MJHP1*-K4Q7J/W7H+?9.V#>*B%]ZV1HC?>5AMK:["4O6YD)B3VN.]%!=8]"!D MCT,DYV%CY;RJBG2YJ_@S-3D/)>L4W95>4[8F!M]:I@CX.NWFF$*D0 CZ #Q= M/^?/+&HJ:=+WJ72@_Z$XQOR7_$& 2XFZDFG]*U+7 @B=[6_Q&!!W>^=-W'RD M%(O*]2W?5*K84PE8%[S*GVXKO"E'$DFTOP<*#V4XSGLOX"I*LU)8D/2N*%/& MUW\.PLOZQ"?&%/6;Q;$GD94'SJAB:+RLL=BV_.;Y&?8P,-K,H8-A,&9 M%V&H!4ZS6"JF62S[TBP.>".!.'KS%QP5 4OE6#TSIRD4]K=V^FEGHJ#/W:K6 M&7;5FA2L4,"0X'(!QW>"F0R?R6>5R1#WFDIFCWIA!-O'M@Z86 $Z+"&XD>#N MB-E(&5/;^>G+/?X_OPCM4TAN:6"? Q"^I5T/*I,7=#TX>Y5Q5F@61KSQ_Z : M]ZFH;K:/D UI-KK'T[ M+52[5)R"U!.KF"%5@D[-:E4Z:S8L6/6M]]?PZZSSV(@G>/P#:*,OZ<3.PZ\$ MN#82B&(0QM&K0%NB3S!OO%1S]D"@:\\((+=T9G+-'HV8"QB%VD\"/RF[6!= P&FS0 MFP:?KU":GS91/,2ZAGLAUF*YTX=@?7K[%L6# 8V]8\S$L9\@Q%8@AXPK[*?> MN5 .' M84;6 A87%ZYQDY&FX'=#8<'"<7_^TKOFD@8L.@,-6HABE+]$E6FCO M+S-H%M3NB=?X+L>#S 68P:[OM@^2\V+J?87U#H;B#-4((8I16-Z$;,^X7W"< MYA/BX,4+,>3@LQF<<7 +:3(<3#&:.@>?;X\6!TMH[H^#=]MMUH0?1N7Z)B,O MMX=:?B..&\VOH9RK!L6Y2X<5*6^RF%EB5QB'CB[-B2$A_16[X%DO$DX[_B.T M> 6?Q->S@H &L;RA>$+,ZKJC2'3(MO**,:&LJ(?Q@O N JHNBK[<Z?[\D M9?615'_!U:$OHX13G<.#=K=SA9>WEGBN%@#JHS<=:AJV\^GUQ;:8-X%Z#%7Z MVPKM<=7IYCI#D5]R0HOX5&R=+N0J#Q-1T MH5YD7[V"U+NJ26E-EN@>5I6JD[Y8]$ MB7X*A^92$=7':E(:IS[ZSE1+'Y1TH4,*7% 'N^FJ@P9G2%?O,]U.?Y.1K"JJHN(3.3Q\">M\"[V$56"X;UX@D$ -%K.S:SCP+:RU$\2(O-Y8\PJO M<%$PU2"FBL(B^BPT@X]8=I&.?P!D0OG$[FMT"LBHBCZ'##)4("W1IY<_5FK] MPW>KKIBNE4\ND<]JNI1CK<8MS0IE2C/H@9,JT*?0G;YM[1YQM"7>#L>-<7,O MP Q IM> Y)K!;X8;>BWW1UU" L:(0G:GOS^]F[Y>+AE8H_D-D*-;A[C-4YV&;U.[%B=8QJ- 5/+;W^S+!F$0EY MTO6BM)Z53PN>"Q5:6W+/&<3[=OM+)4S^MBLKKNS5JN""4*OHU[1:KTF6I/G3 M#2GZUR8YJ!9FA"8MPB%[RW2$HPA*-O1"$:/>]J(L=7H%Q5J@:@Y%H8B?JA#'187=GI=NI433;>(W_7=8N0W.71.P9ZI7;G\LF7 MX7P2_>0C2C3QUU$,5\*#_9Z4,C[H'0/M#-:=2Y\/GG&Q)+H/O!0FPE&1TSNO M1&\R"G@DGL\)ZGHLW,4Y +* (A'J&#LZ;_UL2I1H,@4_WCR.=YL=5]6H75Q4 MZ3^&K"/X1/:]>1* GAQZ/-MAACI(H"X64_/>C>V.F@-/B>13X&KY4[;:1_:Y MU<.3-I.%EU%1[)F)*9Q<,[3JL"M$I-M>TI8[CQZKJ*CT)/V[B/X8@]HMN%G# M=:[I+%!:@7_1( DUT"&:QU+A9YA=->C'_>IO1YG%O.O48'79%*K91W%\N M6/T#2,KRX,2NSW4+G+]G"?"(PU<,D'2_(%BRL4B;H8>A(JAWD27#*4!"L1H? M$7U:3D%!_JF0>UY4/[.O)//I_1IP'.0D)+(RV=64M!Y:>F.\!UQ611I3,_&1 M/7,-QKH/C@6R6.^ #4GP H[=4!^8JS4L<(X@MQN5Y(9?H--90J=B17 M B$4UQBAZH 2B@ZA14%N/0 [$G.:>S^N\_CON[3 R=6N:)MMCQS0H4\,CV3? MU-[*P-$QNXR[)A@GH(CA4J;08$:[2P**&A#7DK7! G700 <\PB?&:^X%,2.POZCN0U38%=X6.$X%@GB;81ZJGA]% MBTF;!D@XV/;TT%AR2VAXR]6RA"\H<GGW5,YXI6TY('TY/XPL?)]>2["X!C"XOZGLJ2'+.3 EJ]4^@R% MKZE]9/NZ]Q*ZIH:%U7L2N"[ 32F\@*_AKI2&X^E0T=LA^A#%ZS3'Q5[U (U_ M #P\\HE='YP6\@382H&\1)]FWMCI/8Y*S(IYW&[H67T6%0B&V&G\ R [R2=V MS4XM9)1V0 ?A)@7J$GV2^>,FDC]1 W%SA9?52&&(H:%0#NJ9TCGO4)@7"PH4 M,:BSX 4C!LE*=&@5C&D&J^X,#[;$.'XJW_2S3L@:."/$'6"?T!VI5VDU$'MX M/@!N+]03>;0-:HA .P",+S ;4E3'0&\8T*]8_?_ZU17=,Q\TR=&\JHITN:MX M<')%6'ETKEF_X0!41!5&Y4NTA;"^.=:@8!@]U)UU(9 P %&ECV$"A\@)*>]6BS5^ MQ'E*B@]1'HFL%WFJK_I7D*2-\=F=FZT" Q:NR1(9!!+H@ 4\]=?%VJ#YOUOZ M5V:'H,UAN2P[HQ3+W;2(!0<*0-Q?9STL-$^4P[7"0KWYK"90[4%CE836Q<\J2L2 M1;RIJ$AK]-";I$;P*_H[%L[1O_X 4D3_F!$SV@=0,&_SLBKX9CZDY6\#?AR5 M3XP5S_.I70N7 VQT ![2L:-$YU[];HQXAC=6DQ+J% G@-R[9*Z(*!YW1*I\8BSWSJ?V*/<:X&%] MDDIT[I5[8\3S61_Y,BK7](Y_3A.SA__$]V\O_OU$=T\W'U MQ]_N7Y_W"YN MKQ]#50Z&[@VQ1W##N_QNBPM>OHN_+#Y@=FB:G]A+1=_EKOH-Y+8?F]MY$2!6 MJH59)44#&F7<.&%O'R5Z0PV3/8Z*\BOTYB_TOUHEP1TM$&Z#]:V1K9TT.(K? MA] BE'F,@.AJ20/F17'N*877% H+&AHL5*/^E8F>+)_=E^I!5[+21DQ8)6(ZK&8A<31V+8:Q^5]M&=O\!); M S #N(2%,B1_U1R448*5 '"X8L#C K6.F7D1\W#:IFQ3*@(Y*H8,VJHLUEEM M 'U.)!:(;7BA_2(L-E[]\2Z_QP4E[(:EA7S K$+G@+M4[TO(]:8&P?5IJ[% MHD#F78XZB* :$_AMYVJ-QI=>TS92=(LD.=IVEKT1R 6X^#2YCAB0V6-T>T7% MX=WJLL!)VA]YHC(4'-%^/J7[6'8&DYGM FK8VK*#1"4ZE JH.34:7OVB\KYN M 9N>Q6"83&%-=Y*#"J<\R7&RHSW97+-!;,9+]$15):9#+7&.5VF@'!(0^PTJ M3*KT]7E(A>I6MX5_)^@M/X]#H^%'KV]6]]&QC5J.L +Y9%CC+AEU&0^,@BG3??*XY@#D=:Z"&#B$[V!O')U2=!?$2;O37/"6 I0FP ME($",QGBX@UOX[9ZF#J M"(K+'2"AR= CE#$&4Z>0R"6U:'6-&><(_Q@>" M],)?3'Z.618KIDY_A"W M/07;B4Z>(9Y,K!*)XBQ63\H81)U:WAC^T"N+Q5S-<_X?5I7C.P$[U-T_3(&T@T M_YSO2IR\(T5!7NBU<1EMHSBM]J+0NI+,5IK!BC ?A!1&R@^B9"[^+:_8QKT@ M4$(M3JA!:A:R0R:$):77B ;5/9Y:[LNX[+@RF&.@]J86K.1WP4OT1L6^.VCD M(-N8%'RV38#[.^XF6,(D@%^Z@(2"<*QUP7/WX0PU:*(C/(]'!I435CB>N-DN M?X5R<4[MQ(R5\TXV:9ZR\'^6YE);C1)QH?@5M*SN\.S.2]@*\/S)+3I"(.C; MB"K-"9"0H2^P#]'G=+/;S/-\%V7=/Y;WN&C>"B&7&&!BNQ>9!@*!+S,-3"U> M:$[I8_=2JU%% M>C$24+-&MN/1Q8![9V$,;O-_#NO0J!0_\9RUTU%F<.(')J M#%Z#S*E1]2UTP!0*)G64"#5!L7-Z&BS)G=X-#"UX&HO@0U2QNLU/1W^'R!N- M"=V8Z . )V*>#V#HP#2W2@]'9GF#X]&@5H PUWM;1>/W=??-^V@_)<&BP_;J M=KKRWKT",7*WXG^T+DU.YO4N5&KXTY!$W_.^6\:KHN_Q)E.YE+4.M;H,!0@N&\5@R%SGV#,?L'/N 1A'_UR$Z, M:.F-#V^BM.#P/^"(U3Y@3W&_IM7ZYYPL2UP\LZ"]VWR[J\H'S&B49J([)?UI M5Q0B;RPMFX2"_4]1FK/ZVJ)J.$O1O*O6N+@DFVV!US@O>3D[%DXNX>W@^ #/ M2S"\]<\@J"'>[6;+*HG1"Z1)+Q8!%?$>5464EYEH[QPE?]N5E4+[E5=/19AZ M$VR!021F^,-,)H#,9#((!((B#@J2!#GRO;6, @F<<)D%$H3L9!A86RW I."P M:TE>H4QU:=Y2#L8X;C#U0(FPH8_C(3(1?"('I[![*'M!!3Z7O3A9/)J6U@P^ MG1,]E<-<-WXP%YQ>XEP#& [0T?L8>![5@/@Z MB6K80,Z@JW4"3A_'X$*4MKF/]CQY=5X4K*"H",I56J:C0ZG)=,2,PH:YW2JO MBB,.N\&@)+= (%GEUI'QTHK%.M;:^>P3H)M-Q_QI-,&PF[X-+V"U%%\O 6'5 M!!I*)23+HJ+33J:N+EG\GA5FX53<-,0[*C%0$13U%Q]@%0?\%QQP)X^(G[TV M%/J\*9V\CD?/GR&"MC.-:Q')0<%+=1AA"B]NG.:\G)LX"+BHZ@+A_+10]HGR M.*5'JJ0SB_(<=&;Z$?TA0(V./IX@8^0#&0DECO_P1)Z_3G J[ /ZCX-90'_X MZYQ2(V$4NVLK@A06.((/L)1P21AH*=D!;8A ,HY$H:7 M+!&SP-$E24Z](+(_ T1A=QKGD044%F+ $(/F71+V4HR,D<%COZ.7NFX//2'W M!@/(KOE?M+X0N"&!'!+8S1#';X8ZQ4C$:([C#'6P#'(8;.PG M<;!)WH[(/<6O$%@^X#B+RE(4BF$YU&V(SQ4NXR+==FW2$^Z$3@,\#+K@W-?: M.49BAI@F%Q5U" DZ(#69:P"\8\36-@1\D;^L&TZRL*!+BB?5LXLVX$?Y45YI M%FOO\H/0G*O1-<"F=)0HGIW@%2X**M,+_(SSW53J5ZKMR^#+M0:Q_6DS[!VO MO-M5946)3R\7F8XB&P?5/$[G\^66. ,,<498P'[+)=QC%165GB/B793Q5B&L M^V3)\=#J.VE]"==YXG@!KM0T*4L393)Y5*EJL *GJM03AKSA]6E-38_Z,B^B)7F@5IKA5#U$EBVY2 M_,J@U.# [#[+"PZ@ 2TI:'5EP#*",]1@@6HT4(,'&E^;P\*!*DQ%@/1TY087 M\8HW:1E'&2O22R_.J_.CHS(4XAZ73.E>QQ?1X0(P8I 1!8VN?'./$EV)#K$" ME7_M,N[U:H592_BF? ;EZP%)K#V'E1*P([#"%($=0H MQ0NIKMQ+*5A5YI06@]6B?4"'$=7TME&:7-7Z7AT\.\\3'N+.8U;4DSET)K/F M/E(!&B[!0P4[.ZD>ENGPHZ!#CI]XOS5=JXBATC:^X#XUX;JB2;*ZLVR5T\FKH:K2D&G,>T_HPC.]4EO;9&HMD62&@=4 MA+)%P#O2UP &1&9'ULI5'3,J=&#Q''-#?W=Z(2F-!=@KTCE=,UD#N+%8!&C$ M87LW6,8I2[3(%4C@79)23:1U!UH16FQ"UQS30D09 XEB"G,"PNB(EE)Q \VZV%PT.]57';SWV4K^G"D?Y5<@6EN"M M4K7G1^GO2.)=YU5:[6_2#'_<]635#@T!R+G3J5RSF("'&$ D('H7;E+J$162 M.-WUZPTNGBC+_520EVK-@XCSTX!4Q=%@7NB=U1-;-+"1 (YJZ(%89)B^1)-H M@1ZA;Z)XK,73\' K3\N':<.\(A_@FS\8FZS%QMLP@S^==J ]#"-][I51SJ\) M>OUYFQ8\2X$IK#)5<&BHB?%Y,J47RQ,=@/JW)Y0(>FIM#E+)L:FYH-,/6)C= M/QL8EFP:;_8D Q;,B#PB&!FC@E/]ZG$39=F[79GFN.QS: ^, NM31[-YTJ,X M3-0 #:0^]9.1*-+&+1^L<9:-J==]@^!* M2>\I_]U6>#/TQC4TW. :Z)O6V[70 8X^,?"(P_?KD%8F,M&EG#\&XHYQ->8Y M&FJ'5TALD(,/!+P48, >O/X]UU48'1#2!7&0S[* M/D27CMX."K2'1REIXC'49-398$:H %?*\_)>/9@ M*:%-H*>G^>=4EA4E'VCEN8E-Z-P@.GZ709\8T#"Q7 /4E+[%G)/(J;2H$W4? M\)84+.*"7H=5;TRQRG"P_.B?UI,@:1*L6^A(@ \D4D9(3'3I%DC(?(PV^(JP M4!TE47,^W(K .4SK6>S,$ .-/@G@4Q _/126"B$9V;SQ4O/V<$DVRS07I>OB MO^_2,A4M(3.6ULE"7V47F?X$0'Y3!^3+SE/'"&+!N%POP-?3H(,Z^,Q0!R-4 MHX045NSH' )XD9@3W&/5_IPE58JP@(>T_.U0*$ 6Q*'R";ANOWQJ?X7[Y3C M*O?;7!/@E!TA@!@&L] 5+Y18B$!H&+">15V]F[D2JDP,\-=@38DQ@OI[Y&M+'Y<+,D\2 M?GU&V7V4)K?Y9;1-JRCCM0*7IST9'["X;O$C+I[3&+>EEL;P!1;Z MZ.@8/=<28KYAEN\_Q,5$5H?:QW$'57J:A Y8$5'I\H*O!D6LV'L8G= ;6Y!0 M>^VQG43=/.UN)7KSS/.DIV//?%GRVM&2H2.^S0) M1-"G!I4PK@SH[A!+)'?J@UU$GV\3BEA;I7\DP6QD/-@+*YG7DQN60D?'X,,F MHHU1F6B3SJTCGQLWV6V>X,__"\L?_B3CX*[[X_E\^>P%5,3!(@HWE+->0DVB M3"*/[GDJZF+Q5DU%7U=QDGKH1[\ .^FE,_O+0Y.B $M%L[$B$P.2.P69YIOF M%?U]RHI91,JK2-5@:"*E0^L8T'K%O;N$C_@'G>-YE?0U^[AV=WW)JG[#YX_$*-/ H4P(O,DH:0KZ_^\3_.SR!FE ML>#[I6=.3Y=-#7+6_ ,QX.@N#V6*#E&7:)'L-=H-8\5?78(*;QUX*SM[, AF MJ(,V:O!&/&RQQAQQU&>HBSSBV*-C]*=2P=8ID[@Q(US4SL5Q4I_>.#D<6OK# M7S]2O6*7X;??+']X.R^*1;')J^0FBTY[D"J-U3PV@W.ZYOM!X#I>=\NK $1$ M4N@7##QB\"_>(HH!_;-X0V/S9.WWS MDC'8RDOM(VB U.#DWFHS#&(!JM!@:UU&;U:AWZ<468? Z.;#9KBD_[PK%N1% M[H22CC2U%PXS^K86&&1$"L1@A[44>JC:9R?(2.5(Q5#6+ZPK%^$T"SMJ14"= M8KKZA)HRX4R3T./W>4*VE%8*#-\STI#C.S/Z9OD.:!.>-UJ!1::O\9@"Q_>Q M20_+2RGG0PVX)V459?]ONKTDB3QD96BPJ3)P-*EO?4 1Q0Z8N##J@3]Y.W3 M"@9HYLWD6A3<9[)_9(D1EV2S&'_L]6-/G._$;2*G,5 MT26O#Z'+4PKNBON"/*=Y/"IV)<--!>_)M+Y%+P?/;+$&@;#"5T;D/O$[2+EP M^?/O]JS\^D!(H<(7MK+G#S,[CR4X#R%@H$.&%:K0>2C%7$8\/^\*PW;0^&#S MEP7/UI 1L MR#A4%4H/25H9^1Q)V@]5D3&O7'FW6A0)I,14J- M;0Z>)0RSTA4L4*$KICZ%BD)0I#C1(Z/;U$UNPW!SAJ??EW>[JJRHF4:)*K4I M5#Z")W4.3.XKPY.C@!Z%#2NP0!TT0B5\JI"=P&CIKV)"E.'R 3_C?(<_XFHP M?GEP++3Z0=^X3Q>;Z(B<(3R,%V)%K$"5JRZJ]:XH*I>+"J1#L9I M:'YMK6Y5+Y1PI:MZT;%3OIGK><;:R>L,W>X<]5!PLYI@JW*Y PI+\';$>KCFL&#(R6:(Q6Z-CX> M]YLER4X.@_3O ,7X:![73-Y85 *:=U6WGV9DE! A7>:M6J?G-^_]S)[S_&CZ M )Z=CK([*3=Z/]F'?>D#M S(> U2>HY$R6?6&.]X^K",-RF_HHSP@ZPW1$V/ M90Y)_-MM6>YPB MTAQ1ILE9J -EU)>T6J.H4RJ>#IQGJZANHOF&CA;?A>D3J+]AQ'@7O''SQZC: M%?AN=;?%XJ#)V%8^$,B?YQ.Z9D0!D7'7 68X![D"88DZM:8A_JXWVXSL,>:# M[NDVK*DMD2%)*'O!1X1"M>*I9_;E?QG8":N$T])H,FW M:%R"C= ]-/,* +?E^%U_QD68M M2>8(*B@UQA!O4#!M14\$!QSF44VR\42-*J'O(GY52G5]@%8U.I<#%4L*BIN2^BS+[CW 9=5D<940>'#YJQIUD\% M*4&^M=')7.BC4J ^S:U=_DS1H >AUM'HKXH6+Y&K.6V];7SK5'4WQ?V8+OO? MD&*%TPIFCBE-Z.L8M(!]Z9!P#*U;;[;H86+%J?B;#WC6MR3'=(9:7%^?W#CG M=Q/9(=DT;_+C?9KCN]5E@9.TNHEB7H[^0_0YW>PV[TA1D!>ZALMH2_]2G3;F M,ID"*"-T0/F2"CHX0>2 VS4#5&.&$&^VR%%"#4XS5&.%6K20VKH=G6P07Q(; MA ]]^W-%W8(/=GP>!P;OE#RP4[J1%#9#T82;DO]Q"$]+UIO:7 XX^;78;I/C M+?=1! MOIB@%#1QTEPR/2#[(F78T$&Q*,-&]RZHK^8V3RO1".2*,L=IZR7 EQ8],R<0 MG <>'ODE9L(SB1CHR;@?9#0?\3H,$C(H^UU_WJ8%B/TD7UIDOQ,(OMGO 'Y: M/"@C_ @/#E(S* ^^QRPV83")4?4SB]S7G=XOZW4\L@*)L'F,RK0?84 Y0;UQ M7T=I*.=Y\I'DT>$W"_JO,N*AR.5@62+@+$#>U(3F/M\VHQ\0)DF>\5'9-5;; MN?NS*,I2K:,<'7\4E)NAFT3.8\<$- 0%N#"W'/] MY"-J-/$H2MIFQU3OY5?LFF3T?)77?]\-Q9>I?086+VT5 MJ:),3VEK_UD%,X%3\4L?(V,[= MG(Y7JL[5/#BEIN2(DG"=8G"C33=44[0H)KN\*O;B%-8_' Y@_8N_4J(?\\3Y M'S2/SF$"U^?BYX^WB^LK]+B8+ZX?O3)##Y&(?.7>I"D3YA3,FBJR5_@99V3+ MWB&&[76E;X#2QX+8KO$KCM)*RG>J'8-X; ^"^U8O .$:A4!LIDQH M J>>OW?[ R+\59D% A9X38] ^HQO\YAL\'M2Z[:+Z+/LW1XV"_3=7@^::[[L MH(,(?YF/NPB%95?HSA!+Y/;&R%=X65VE99R1,EFT:&0UD3,FLKAF0@44' MN.&+$(]1EVB2S*/+AMI8N!Q1\22CP*Z8H]G\==HY @OKK6.(.<"@;6"B&NBL MJ;Y=:Z4?24Z:7_A=DUF'H'I52@JT6\P7!IL24O^7G4JB2** C;]:%KZ,MFD5 M9?-E6151+-/U]2>PUA),!LAY;.2:10'RLK:B%QT_[)V'LS]/I+/6Z$X,]Z=3 M(J\_G>K\8AYA384OH+J5?&9?5^8 "A"!;75%X!*:%4$W:1[E,6O^_%C1&X!' MWX;1&Q6XAP (Z/_)3]T24?G$])$O@$W2PIZ48:)$[+Z'ONF8*.T5\9Y=&4VT MQ?[0U%3"9\K? 9EM='[7''>P S*&0555Q'OSFN^_>"KGD*/&/I^A!Y7HZ.9C]Y2D,B2!BN%QQ9U%W0 M44+B&80 MV:T1,5S+^IF)DZ\IS/LE$DHDDL ,$%K_U]/ZW>CZ MKB4_CY:'>%JLX0N0GP>SA .?H1;\E*P/#9O#JNIV4H7P%_HC!7B;+^A7^"\X M*OKK!8"^A:A-JC# RQ6&%JRR4BYF,1?>8I M/O2_(J-2%E>N^ADXZ&)X>O?1%P(^Y3N& *JBS\T[*'JSQ#E>I568'']EPA,H M-0VE__D#V"7)N?_^U[1:7^[H\=[@8MS':6*0#0 =K MCVB!GW'.DAX@_N"PRX9=H_,-BZ%G2TUK5-&;I$;V*W93YBU*B"RS]$GF&(WM'H99W&:]9LMDR3NIL\6DV&2\A#T:7+E^++OT(Q\OC8\^.!Y&_'DW) M3CNE_KBYUDM2;YQWSZ*$24Y5".Y.N2=4P<556@A7C%".2O7'LA M(Z)& C58A']C-]XC8IOP/L.'Z?:D]'J;\R U7M7]^G.<[1)Z+EEB^DN:91+> MUOL8'FRL ,1C#+("-L!@6"?K!-3X.*""!"[LI8-B@RZCHMBS&TN9UPLB:Y@XU OR.IB M1\V"J!9M.0;):\OK@=VZ@TA,8%4V'MG:3:-H((6%>;'B9&=#:L0-DM+0]\JR M.C/RE,;R!S;)$(B?]&0J'RFY'!S\0QWK3#O*(6Z MRZ(")8>:$G3U+"D@/E#@J48Q1.*;-@<2,U+[4RJ;M+"_^ M=^SI6?M[J(*H"L=Y1XTVB15U4)DA@0;Z5/\W]'.U_KX08V)/U!+B=ML+L6+[ MG,SEQ=JI84[3OJF1\$<:SN;O1/OT M30+1\W2JOWP_I2E3FIWL5^.S'/$^F$WF[63[\$288>?G7,/H #O68=PRA@QI M=*KA+AIOSL2/U$Q8O.#L&7\@>;66]D\VG,ZQ<_$4[-3>$T_Q<_FL:$X+V/'^ M8=)>5REC KROPQ2>W!$?MJV!L_B(#/!G3VNBY3PJX$NWH:%,!XT(@-K-LOCM M744VI**:P$ MV0,*(+[9"[G(=PM/(,8;F.M(]!]\[R3B?WKJ>W%0,IJ:_W/4_1K6!G4B]> MPU N!C,LW7L1_[G<#988%NQ5? VNAP\1O6/I?Y5T0X.97+@@^B&Z/NL"I6X[ MQ=-ZQ3-6^FV)T7V4)C/48#D5UI6=\:>HL3+F[TXKG<7CNLV"J'L<1KTB M1UQ_]4U8%3%QL8TWS!H:"ZUGTC>G\\98O%F$J%P2I@K&("6)%GD\JQ=<_I=J MUJ_"%T;J0N_,OM0" 7PRYJT*K<]N=04"3D-[;9X.='+SS"=T^9P6-!,/CJ&S M1[:P>7?34]#5&%3WZXZ?TX+DO,GHFR!XW5.6%D* N(CQG2: "?^ASMTSC!\#CE5?]*_?_-*C-?,2(U-[N MU7>[,LVI;*#&QC+-^:[5-[[DWAS_ '@ORB=V?=@:R*@+>FH/% IT)_K$],9G MUU&1TWNGO,<%MW#53 3%KX <-S*[;#.RQ[AN\'=/)UFSRH7W=(Y70!@C?;FE3"3Z%3&IC5:= MSKO;"FVCHDKC=!LQ/7L;[7D[(D'8U]3T5B)AC3O:#FVE-SWI M073M"G&Z;S.'Y+;T*"ZOVWYY[!=%:2$[>NH,$PMCSW"ZL:Z:AZCL>'@/F#] MT[IF(0$74<"3\PV-4IKHDL][_LS=4-J!5IH,8";#;!@-B--)>IE*\*/)MO6D MKX#W(FCXQ (7F[M5TXE7(TRB_T.+X1#' $*&/1QC8BN\P71] ,59&J[,<.$E M,6MLT!OVZ!^FO+ &LXV$-@Q1V/#1H6E7_2Z*?\O(DSQ>87 @Y$&@=T+7IZ,! MBFJH\* #2^@;1QBTW=B7 I$ OL]AUB#J!/.HAB=XY< )9&U>L&)O"-_7[62, M**Q?KG?J?+E.(7NL3ISM4 3;&0%FF88:#9C4TP+JD]S[(#8ZS')8%O8:Y89 M[(NWDW#%-),XY8>2_CO#_+DR3[JI3A*VU_D4R.,J(%PS=!<'%.4)>_5N@0=A M5BW"$Q-JAHJ0XO_S"RZ91<7;ZK* KIBIW4_X/7G!Q0.;P6KDE!Y(KQ%5:JA- M.])*;0W^(F=TT^:!G?6"$%\1^D)(##/!!0DXTBA+ M-RG7V+<'$M&?GFOZT7_R9-TZU*OLT+UN3(NBP_)?4_"2II S#FJ"L, 4[YR? MMUO?=\XYR,G<.0?47N^=>?P%4WISC$A,>S.$23XKSM'1\@Y MO7-D+."W#$QY6Y8[BG21QKA)5)&YEL;&FQ2#Z9O7:SV8/@3 )6'LK 8J2TLD MP,\01^"0587>I#E*2)9%1'0_D6>F\KCFS 2QJP,V:%$*F#8A_AE$!QNE,M(GG MC:EJ%!@VO)&IA)=DPX L=#J=\Y@G#J_AFW_YY@_?O&7)DR*Y\M_0M]_,OOF& M_W_#4]&N6I,B_0=._@V]_7;VPQ__.*.4XV]5],=OOW\[^_';'YK!::VFTG]O M<:WH,GH+A%5TGOC.U;>+BK7=\5]5%3U#_/X[[NT3)GDY:C=K9J"1BDN MJ::QV^#DK81!C><#7 M>MHTS7ZW[[3-OBEXT?UX/_^<2A-,U;^$II&.0W!]<#MP40L8?6*@ W=(5Z!Z M7V]T55).[.ZIR[^SWQ>F]XYD+J=WS@E,UVQ[TRE6L:I]%BBJH<]0CKFGGJ$Z M88DKVR=M:3M(?/^2MN\ 7A%6&W),THY_:2IIY1 "25H!/+"L5:![GZQ5):8_ M%_,A1KL^++<5WI0+\H 9.=(,?\25R"9EP58/ MB[0I:U&+>9A$>F]L0D+M?="[IJ1+VA4%1;,WJ0[RJ<7;YA2$%PV)(S%#+6C% M[#N/UXV4\B/WS3 Y0S@TA6-UWKKRQGV;LB_,W9RG,_OU>)YY-8,[S56(WN^U M'*9D.#X3S_JJ/'8\VA9_B5F#\)9P@D^/KTX(/<13?=0+P4_4LKPK'BOFWN1" M=B2@2>-+651I'&>J:^T&,?!D%R0A9G&[XA^ASNMEMI%O>^W? MIA_-X]RS(X"%4:[E5".CI'"[U6D^O-5]?X=L=7<>YULM@ 7RT:I251)Y(,ORGF> MU B4O>\ 2F/A''(^9Q V":4$C%.6:)'+O48HD1]G?X-J@SXDA507#",MSFE' M!@EBF,39TT"(.9R?/ M&*D9,^N$Z"4[C%[2:IWFB.08[7%4(%(TOZK6&.6DV%!Q?GA1C/=QAFV9T MK^+6(*5Q[C\,A;GGY,253T\:V55E155F>K*"N%2']H5H$#L0RRD\#(U_8(4! M?3X/G?'AM%Z(%"@N92WS=R)9#6*2L^N+"E+ZKS)-^'5&\HX,'2A+K/DMJ%*Q M(@SWST -'N@($=2-[(<7-':V2O,:QX>%QT<+[^A+(>H>Z_(>,2*U_R8EN+R/ M4IGPEHPR;4DB9G->A)$"8]X0[A)KZNRFHCU)Q9 (VX3DA*1]O4?ZZ&0HAT\+ MBC:J+\_([Q.^2A] ).[@Q%Z,XD$,M&6KY?6 JRJDAWJY*H45W*_$U'"F1Y;E M%&/ZCWI%,X0_Q]F.:>UH1>V[/$[IPIN_95'\&_O+=KTON2^TW"V9DA]3LYFW M'8WRKI$2JB[9H15^(W'QT+\*-+YW0M++KP M0CG3QPE*M*CDEE/PTRD&TD>XT;$03I'-Z9=30KV^C9.4:-$IJ'-A-+I9[2.+ M3@9_,GJ9E^0(7^J'O!"U/;WH,%'K3 ME@NCYAQ[^[BH<+$9X?JIDR/P4]X)_J^;EH RC W^J+, GKM4+P%UU]"T'VE6 MP1FQZY:K%S+K_G*&7C]A30VXA!U?LLS2)SY#6YF$&73+9@?BPTI?^8NE3'2[ M>)PI+$**G+C-_E_W>4[Z)B M_Y8.^8'7Y[S+*< 5"_BA*_Z JR*-!UY%3>:!F!$0>*ZYL^DD0')48X7>SA!# M;(9$@5?ZEPYRJ,8._H+JAPHPC8O"KR(6-T9X(%C3)J!LNNLQ?34N4JHGI]'T MFP<8\3>QMEV&IYT*&/;XFU=WJ_N"Q%3M6^!XG9.,/ W&/.A\!SG-*O-[N%L$ M#HP9:RQ0%PWX,76S/*-CR(9]^IU4Z2?V%:,NE\9I^5 MD@3T&>+PT7<3J98Q8+)Q3U@!B@#JD/R M54Q; R6(^'>S8I."V35&+*!HS7NN/5%$PAP] -\1"Z0-6T"O_>5_IKB@2*SU MR[:.SF&SI)X,EK\; [60N4'_>=_0@W.T=3(NUFF1S/,\I;9U&17[N]5/=%!U1=42N:?/[LP0 M7Z =#)Q7MQANVS9#G<< CBSJ8,O<;1Q?Q!"&^Q5#D0KF>?SE] 5@\DY_RX?A MO#&PO6T+ZC-YJ^TS>>O,9_(VM,_D[?1\)J?4'O&9])(P*(-]J\U@WSICL&]# M,]BWTV.P4VJ/,%@O"4U3NM7*7/ M:4GOKO;%:"C?V^;$H&1P&P@X5]$9/JC%$M48S9#X0XOIX0_,7=!@>WB)-$DG M#T,G\V=8%AYQ>7U':75S)Z5+B&QSJYQ/W&V3_[OIW?[<)<1%FUH[/86/36^L M02!A_8.3Z*VGL@7][?64Z>J-+>^H!"G:,-8/$8^IRLK'W7:;L>CL//F "_:B MD*0E_ID96[P*Q!,/]I!PJY4Y@4QL!-M7$/9>5 9YRJFY2H4X83B'"7"VLU7$ M"?T-M;KK//FYQ(5<.^L= -&RCB9RS4,4&&+0X,J.(;HPI:5U?*.7-4%1@;GJ M@NEB=FPQ9,5_CLEF&^7[WY>L"QFOIQM =^GG"S)./5//+-ZD%#>V;%)\B(K? M<#7@;!T;#/*?RB9U[A+M D8"LH%OT]XR8,R^H*Q<'BUI(Y9$T2/T *3QFK-[ M@;>DX(Y-EBM5[>E'61:4]\?9BN@1V?!,L%RPV[RL"KX+[TG^Q')E;]+/K+4> M_2Q9(6#QC-T/LFY7B&.%JHP0LQQ'B:)_SL M>5@^[$S>YCQ&GE=BVPH+FAV\VH;FF9UIBW> DP=G4F*'],:WE^B2D"=F^)E@=\ MV=R<:2\Q5)*,]Y+MN_""W' J;$?T26]3^ZOA4 (OZ*E5.4N:'QMKAT- _&J+ M!TP00\7*>7.V4"=GKTN-[8$:%:/&=(^A+L?V*I[JNV-5$7U<4_JQV_67J. 5 M#J#*J.9$Y@JI(D#O2BG'J]9*&]0<*J;.R !73J,-/9+?O ;E5)=I^Q54T!88 M%XU-=A1^&F5C_I7AD; RL7TSNGW_WZB&X>[CZ@N_OKA_GB]N-/:'ZYN/WE=G%[_1CDY<=@;X@] M@AO*H2N \- M33O^SG?[^H\+_+EZ1W'X32*O#6<#"FT@5.=>ADZL>0T;M9BA#FHSQL_-B$\+ M;KDP+!%',TRTBNE.$LO;X[M:1EV'D*%V3[(TWH^QOO)W9I4PY/-[J@Z!/@FX MP3E4G>#G]2%4J>A/##>UZM^G.;ZE_Y0%\LD'0H7GV83.Y6(#$7UB,!$'&DC* MR:E)U$GDC4OF649>6)6N&U)1RSZK(E96FNKI(@4 4@!$8NK 90+%]"99MO"1VJK<>6-&&4:HDT[?W+][,0RM\BP M&%?X!"JU!Z9V?506193@5B93 []!889R+)I''XGQN,!)6J&,L'I>[,__\OVW M?^1!!/_R_;]^/Z,3E%O,7$@XVX>1\"K[1"#$]RZ_A=G&4%(4X/(/#"7X^<2^ M1?@Y!B8RW,9ZC(3X 8%I2/$!SND1XV/D\R?'DX3;E%'&NE7>YI?1-CUO)JDX M&BJ]^V=UKEVW8-&6=>I,,#8)=EL"[S& M>4GO,-$.=3 ?7?M[N)*@!L8WA?0CR4ECC@D&O_Z\I?PNZSRB]I%)$JAT,)<*^17_N<$F=X[0]S=I4 M))@_PT63I5QQDT5& I4J[_(3>H,%;*UV@0Y6 K2_9 B$,5=TCLC43L?I8^Q5 M6L89865'1U_YU;^$7NKC$-SG")R^V!^00)]"/W[J; $QH*MQSQ<28YR4K![_ M8Y3QZI3Q.LUQL9_G"5,^M@R?C[BZ6_UT7DS4: Y8+Q@]6.[[P@A\$-M]5$8B MF"3!&\*BH$42!VZP:EVDXX6[@RP=6*RHEP2;!C?NZVU)T*5 D,XQ0%8E5C;! MGY."M^.LO=(CAM_@6*CSH6].]X6 ZZ;+''@80V^8F$2+0OX+5QUNFW),Q5#Z MQK1,5=_<'JM3=<"'5RC4"-Y7E&J_Z(SLNT-1!>T)?2B^:D@NRVO U=2 E)U:8>3^L687K\2Q@V! O <^$35 MEWWH?IB1YK**BTO,P,$1G**;_RW6Q&E^NFQ7M:L3?HPHM\5.: M\_Q$JJH)F%\J+:]SS2X\>I1DY:\4:>CHW@@B[\@4F,#;K=86PU,+1!\;#KPM M9--Z*WDX0W7@^50"T$<)W=?G?1KAYM>K%8ZI#7E=]_IB&=-W^034I^D@!CPF MX1?@O'XD7R$/MFM;Q5'0+/PNYQ=3D,,8GNY]QSX\5J_1$KOGZ@Q=:(&C$E]A M\=]VX5UB"@*[L,7 2(2PQK21?17VF/:JO%L1'NA>D2K*]&P(UIJ:6PC;.JN> MY9>^V;'>1FG^%8N@1E&;5O_ZK ;XR;1E-QANNVG- OPY*@]E<-B-0(HM87=P M,E#$0/DK4%6#T=F=9PXP##H5H=B_#S@85#YPL#)@ 1N^PK2SPK2[P@U')D2Q M W7.(D"BAJY<4W<'Z98CD<40:4]@MU)-#R!OL3G*&(%"CQRNU^2.K:]5M&H0 M"7VW CAPO![/*)F]G=#W:;1,LZ$CV#,">,8Z,_DZ1!V0D%-BA#'@&"S8)RA3 M1=H1R_?M.%$@BC]SF&PV:<6O.JI77G(S_0G3 R5E8H4OH(:F?&;G(10'T/Q% MXPAX&$-$@LZ*IY=WJDN=.\W)3LC1[L"9W(_8O\(B*0_GLDU)WRHD '=P6:(NR@=P-=5<9Q M"B!C)9Q %*CE+[7T../J/2EEBO' 2&@2Z?F,OKP(/: AW@0K*P!X%0XUI4(F MP0XP!-&@46C?=4\I;3W?]< $SJNL!_9=]V!DT7=M9;VVWH?;W-2)^J^'N!!4 M3]ZNWD25LE6*LX$'6,D0D.9T/)5SU:D!9Z ZF6+L0G=J< JA.TF8@:C0*_2- MPH)92Y,;96 "NS=*#Z# -TH/1A9O%"OKM?$:FC:(3/0V&>+ \=MDE,S>3NA] M@5FYM;J21--E\BC[4W(T-;X$GDD%".[SYSD*J*YYTFTO&A^E\P;A39TM( 9T M]?C,65:L'".OL2]]V.P9 W[*[,SE_O&RY+4%"@$NT'-E'_&($D6\<<%/!;6! MJ MI3GF;_2\-"1K]4$)(!;RD5UQ&U M3YX*S)LGG6+4&YH ^A; /\HP C!5B" %&-V)$3&]&2175"8^1ZP)2*E60F'\ M Z"Y(I_8-9]U($^ND(("N8D^#1W?>GE)@2=>,WE>J M24(ET^S]-2XV4;:HS?6")+NX*@?R]A7&@S+V!^9UGJLO8*-%X]^JH1MDZ5M= MC8-@DV;)VV:I5"#QN*MJC5'1UIBG7Z?5/D02OPJ;$6UJ>U;"I]3N4"VJ0HE+5VWJ*V[RB!^A#5/R&J]NRW+'&H"QEHFP]$7+)JODI1,@J M@G#-.//J@N)Q(1!!#2:(HX):7.#2U]DRC06QVLH#R%M=YB,FI#8\8SSKN61Z M]0W&]Y@2G>[($[Y;-6^WO&=!WQ'3^Q)RPM0@>'G\5$-%^W"Y6B% DS^@@B@N M,W3 A@7&B$B#R:T36&R)JF7;P_+B=50\X83;E4QC*[D H8LNZ1]P&4" :!XM M8D!E3TH<3JZ9]IOB<36N?ZB1(G<\I3]5CC)5 SB\,B>AZYDZ-T0L[]RBX'F7 M#;;$,;Z][T<\$][_+J7N -\XR%V^I[1+$RK/[E;7^7-:D)R+?6JFQNN<9.2) M@I5; _I?PQJ,J4+Q$!HM,&&WV!$NJ(L,W"APN51CNX#=X5LU"@3I(Z;-B\20 MZN9>3?K+[WB=@MN<*17I,V8A2X..395/@+[-H:D]N#<1@U]7G6@Q$#%_)CY. MNZNR?_W!5E$GW]-JS5KV9WF3S>D>&1& MQ[NH9!&"&Y8%:#%CX(6.7YB$/3,^D=< M59EP ;*F#B+(%)^^QK.T/GH <\QKSZ 7BC^J6.'K7;%')1< U:$V39B$*E-6 M)[;WS%]9U./"5)V25?,-B\63" ?5SZ %5$>F=WW8WQ]JD]4EV@3<;AVW,!5+ M5>E.H,0T-J8(BY[HJHVW^?6N(%L\9$,I?@0SG48F=V\Q<02.S2,J% 4.)H:2 M]859LH_$>JON>LNZ+7J[[D!=EI6XC, H[$UH/^ J8GD>UU'!VB'V>R?4!@,% M=/^DKD]2 Q4U8!4/CR-A/$)9HDY=5-^IFJ&?P1@OVJ MB'AWD93T26'8#+"<1!U(GC(0=5 "Y-*Y73$HNW!9=?J>S%"#U0QQO)! ##68 MH6FNW,J5%==H\7>Z""6,-(>&*:A@NCP+LZH('[[B]!%O>_Q;3A_>.2U(%B'H MW!(+&^1$9G$X5%OM>/]O=GF"$S9\08Y>!99IE43JP@P\M3TIIXU"0/&GC:LE MZ>"!1G8%)D>86XO=MS:!,^+?4OT9%W%:XM-B&=K?@2M, MC3B,]%FG%*I_?YDGZG":[*&/. M5^Z,91BMT^V"\%B"O33\ S@#("9$$Y+S]T>&#L][NB=ERKWUP:)$H)M +%#6 M+W]*@M8&Q]G@-1_A:GT<%296;9B<,JZQ':6F<7=YHV00V;:-H,=UN,W3F2B33EO'#5/$GX$H^P^2I/;_#+:IE74W[)# MZQL@9PW.[3RUI06.&/2+-$C-DYWP]REW0XC3YIC1-ZD]18?8627<$]6$?9V:+ M('O[CB0$">"RTCYRQ&@KO%T^CW0G>5#:]=]WU,!C,58D9R[(H>ZF*M\ +Z7! MN5W+&@$3'8 &[72J1&4"(ITW]CI!9;!1XN!8(#OUSNF;C<)V1!PF*]&BE;] M2Y(_+7"Q82YZ";OT#8$&4':F\A49W84)ZD%OA#- .V$ +QA$% AE_:KL.BB[ M"D'MXU*B0A/3T%)<\.HX%,,EBYY^P&55I'%%%0^II:G_(2C$5 6 \S>E Q(7 M/+H<'=#0LE#]+=!.N&EGW1PYJGBWZ^9/:R$R\;18CL#);)I_1P_J1U(-Q&;W MCP!EUQW-Y-Q]S(0D V>0.&>(,(R];SLUP J11,+B'-KUA,B/Z^UC7%Y_;DJ(E(D:1X5>U[5[R,E$&M% M0K*,-\*F-AS5>"3"V@-$<-UB9YAY*H#R5NW0(35#9X076 ^ M#8=+>/44!;@O3/G,68%G]Z*%!-A%0YWHP^)=E _X5?K^#M%[NO.X/M@?_GNT MV?[; C&(!FW)C3"VJM%T%Q2B(7D?#Y!1,EE-'+HJHI>AYHO#8\U3>PYS!LC5 M.0 W3"8Q686-;!H&W[ACH:T%V?),LL60%:K2#;OLT,LZC=<\@Z5$<933:Y#7 M0TDHICEB&1R%R&N)&AU_QKZZS_^2?\BO%OE_TO\\_AX).3"KFU70XY_A&?K] M_=N__/#A[7=7OV>!!UTT1!P"RYR)8EZIA>08[2F!Z0RLZ-*&7B/K;&T*[R*=MFIS0+\VEP4 M#4$)()R&T#$\W797:D. -1BQ;$!^VCE2[,!-<<4P"<<[AU(QLHLRNL)ZO05; M+Q-&0K M25&0%\SCG7!#@D3@.:NE')-+QY(NN+!1.J#]XD=]9_R%&Z0Y;BK^ MR,(->H9 PPTZ4WD+-^C !+W=&^%L%&[ 0!]J2\W0@EG281[S^WB J!#)&R=? MI67T1*7$$Y=4=ZL')E-VU"Q>9GBT(:?.MT#>5X+A^E <(\%XJT8#?>*(A._5 MJ;43Q(B\'NLP;>MJ?W'@6DS]T_H2Q#+X$*%L82TF%2T/X-D1RIC MKIC %BH-\UP&*C0UPCA$EX(>CP@_KHVCD^F.+!7W48P!U&!1"Q<)P%XY3H6D1(-.'DV<&%-&76:XYM-QHV;L [ 9(YO8O>'20)Z, MY%*@,M$GG2.I(XI1L8"?@G(R5QBXAG3)"O07^TN2X!X)I/$50!HIS.X\[Y2C M@(YPF"&.!2(%JC%!#!7OLDJ'^ 1(46\R[">1A!W'/X#6JY).[+Q850L9-:#1IP9XH#I5XU0F^J3S5R0D?76.VYC^IO9I[0!/3J_:]_,9=>H?"3TSCR?T5<0 M1 ]H2/R#E14 8M,XW,"%98;X@6B0R+&+AE*7M2I]QE=1%=6YZ0.^F:'A!DZ9 MOFF]>6-:X(A!;^H,!// #)*8Z-+-GZ3$/'6/6MT?HN(WS-1/%7>+ZF=0&3HR MO7.+0\#G3I86@VGX5Y0I3Z#D="2Z'G&\*RC[7W^.UY36^&.TZ7,G#PT#B*J^ MZ=QSCX")&J"(0?4NF08I253)XY@;WGZ[Y T/!CCA=(@!%S13^6DY05;H[;=O MEE^A!GPP%C@C(5&ABV'BVKR.F,9WJQ5F!8GOBS2F/_ R8B?[K?X!)#UM<&(O M&6F#&&BG9%E>#Z2F=H,!:E! ' ?&\Y-8$[R@=M0N[3G*=FQ%]0*WS0)%JZRT M+%D1;:8BE"1+ J2.J9T7HD]@?^\J649>6)3:S?_?W=$UMVTC_PIF;NZN#\I< MVYN[ZTV?Y"1./>/8GL1IYAYA$9+84H2&H.RXO_ZP $E1,DF 2WS0?6D3!<1^ M8+%8+/:#%^_XX:%<'[+*#RJ.C^%?I8H"K/ON\,A9L"\PXZ"%NON/1 OC%_!. M.:ZXOX)/C@@L2(.H2@C5B6,$2ITLB,).;NDX[U5(0>6.UF!J>3JV@[OKIH - M(^1MXAT\TJ8/!_G7@3)UUE^ARM499_=>MN[]1YUV7>&@3H06%A,*V'F@;7)- M"1.Y$2K8V0L81W)VXL:YA@X5EW0%E2.?K_+/\O"E>UX,%+RU^P*S889G]KU9 M%'12@X?D_ 8!_#YQ39*3NBL#E$8P%2WEB2,X&LQ8;#=XO9+&-YR"5BFO]A\B M34(S@%!6H!D3C.'G@SZ$K7?:L+A&!&YDUTV2+" 3LY;!"%GKZ5ULP^" C_NB ME%=$Z*ED:*+7,P[];'\VG_\W>J&RP!3(V%WT^GC)K1D4,.] , D&TF7>L4>6 M\;UJE63QA#3B2W0F@A&"_Y0$C8*VDH](S.,M:I(EM,G++GF-+C7(A]\[J/>Y60R8 VD59=)>43+:4P>%Z2MB"+ 6I:7YX5K;T_38M$OVC M'@(__NTO/_WXX_<_TT[VQ/#&FN6.CUR"P(74FW1HBZH#%E],*F3>.7/0?'"- MQ[SJ#=AP_46-9PM6QA:TP<(#5M^X%;8(Y0?ZQ2UFR0$[WIM%;DKA@1ZKX(** M5-RN[_11H@4[3[X(>7%Z+\IT)S$PI,).G09C1R# ^19#A1*Y79,V4D1B121: M\'N#V/BTVE@AHN(K<^NBX-(QL6GT:AG>DGL_D_LRIPI&)X;'=Z-R^Y)8."B89N%%^%Y*9,7.7)093%\Z"DV'V$ M%)SAR7W+40T-PJ=5'$U,Y6+)9XYC7L#$2%HP%?C9=P:]&(!.@ZPG"I?]6$/$ M)3WB\47E.DIP5HB ?S,T'O*6_OAB^;F91^'BA?,R3=+L M !>;X\YZ_VV5'1*6Z(*^N_VAK,JTUYW^[EBA4%_N($ZR1_*=SHV-+7:!0["( M8Q?(HN*0XW )$YW\R JZ820_@,Y7GB5>2HLHI5GV3&H:B&B((*RB0L>XK&BV M.F3:#?7 5A3<4/*>GQ:$K=<,JG)3", LTS?-7,E!)2NT6G^!>E$J1<31*6XW M%O6;K8E2RH)N5$"2*1[=!9R%J1V&@G- MMQZJT2&TVF4KOMOQ6M:5@ZS]"V''4JZ$']%4#\D__/"SWHYLQ'Z)Q"5$RUM' MK*HX-9I1GA0+5OJYH\6*$OG:5)ZP#'CM'.\@SO5D7M];_33R4Z@Z(7/HB6)F M=$^0YP#WHOD;+I[K*^J I]ON(T?^AM/)@_L;XKF\+;D\X&T88ETP";OA^9?A MN.&.$4C9:B2/FO6 MAC-_SMP!EJ^A5H%5WN:3BU_777@FKFG3"O"1;(WMZGEQ MN810K-4X1\_P'&[=/-VP(CMYNOPX#X"7)R^.*R8@?,GVG*@8,9(/89TT!LDU MNVAL5B+8%J\#C98K>0VK3K>!CHW#HY';MF=6[]'#%5C2@ANU):.!N7PDQZ+9 M(T/'P>!81[9($/5NMD2.6FRF=DBOXK)@:%0%!7\L&!MN^FG[G4.E=3)_#/6U M(#4.D?M]6C/?H-0&.!K#!0!]%2\S_F1JHF/SR?0K_XNI@U[U5>]-!7Y&5_Q^ M;G=?[0TL#"9C[8(9'VE9N<+;S>COBC1?I7N:?6*P%Q*P)"]3L:+9_QCMH0G5VP+Z(%-)Q3 MXC^>'1&3B/+N?FAA-W>G0Y=(XEP-O4LRWVU]*=?T<=KCKV[^\7]^FTQ;@&G>.Y/RO<[WB MBKW6#:_3//6 \BT]<6<^V.-4P3RP3SS<9O]W&/\KAJ10WM' M9](>5Y% % T+4E.A,LLS4M%!_@P,Q75Z:!BR5@QYK!BR;Q"!X#259/1&44 J M74L9TZTLU>>CI(/G8$.O>;%3OU[E*=2*7:Y64*I4:E05TK3/6,F6 MR6\'4>[./6KW4E&+-2L*H]H* ]R=\]H#DA']W1ZH<>0BGP6?IZC-%BW*\JVI M(2UR%J0BB!PI(D>2%N1(U(*]S_P[[];T+RYR?^F[D8AV*@7AD M)W.&>_X[PO;?(J;[_6LN&PJQ2M/>O_I8'TS\+VE:_$JS ZM12J&Q/!4'N2-O M\T]05[2HBNP(4Q#'I+F0XHZ"Z5O, 2FBL%J0%EZD1HS(XZ1!C>CNDS,)\)BV MAMSIPDST'M]OF3R7,E5^6727HS6.P_AMN^;S+7$53%(!Q7>)=X/\Y/[P947/ M7N,1P?$V*!7? M"%O!>31 [V;*\O,OY/+Z]NMGT-,_8\)<^"6Q,/^'=L MS7+!EJS@8D]7W:TU+49B#OGN&7T+0P7U'Z2!BS_I75$P^:Q/:J)HC4J$X]X@ M(7P$TX*IQZ9]J=Q?5.1RK%W7N\E1:H^LU*8(,$WWRS@6B576NH= M\.N5; =>O+HMK41/S*HS;>\Z=/6H'6;N1%5ZE2=LS^1_\O)=6J@^* ,W)O-H MC$KMGS5 !Y@:,FE XS6K2T)65.UN&F(]!8%!L\O0/>4,&923Q!#^M3EZK"NPF'SA/GM(L6^9) MZ]8CQTC5G/B%[^:];**&V M-[=7#_=*YW23#+_?N5^O<,ZSO7ILS#>JC-PG:*9QN_XB-/++'5R8_E TOO\& M.KFOMA!V&JRC;22X4&IE+%X8?>&?=H2MTB!%%%;RA@UXO>'K-Q(SG;&^@(#R ME"?I2EZ_D\,JVHL^6E:YJT4(Z/O192&_IN6V+A!A'Z R\FNT7\@*2@BGJ;*V M"UU;8T%RIHK05O#)7E>'B^0+&K<2?")[ ]9$/J^$VR.+_0/1U8[/)PQU2+R$ MC#D&7."/MOC$26%F%I6(O3I5/I>T*,>1VM]G7O M)N3VS)G[/;W;0F\T9>O?U NFVVL[$GC86_Q() -ED^LW\)SG;^HCV_H]_'5Q M)ZC+8R0UK^GVC]UKTYT!DT0DF/ZL$CC%/:_PKJEENF0RA ?5%/5H01-&'J%W'7;!X8H#!6R[OWC0O+P_EH6#+'20(27W*TD?0H5U!!G9?8 (- MAF<.4A]C&(71$0>N*4+LE1J%!=%($(T%F1%5N%B*BARJR2D:^"1=DR=&5@6# MV"*:)P0Z4)444J_W;*4>-$G&'EDF0#NRW3[CNI:$' %1&:U1(+Z@5LMMP0^; M+7FD\@9Y$"214PO"=)]S^9G<5_^,$+=AN14Y8MW"]^A2S\U5IZ:!3DC&\5-[ M<9W/ZSVH'> UO;=B]D RL[:KN=8POUZEZZ'V3-_3;ZU_#.!V& 8\ Y=#-X*! MW W-@T%)O]E69GT]+(GO8^BFY-7[%PR;RI-OP48LHM33-#Y"#@]V4!,SW!.C MZBIXPRL[D.N4':CK7L(_)!*763TZ&CC?4P(R^I/BP.7U0\%%W\%I^YE[[Y2: M?@8>*86'8X\,DC;$S;)&@I2<5&B0(QX+8D%=>&_,J639>6 Z6/HJS=JWT9[3 M#)!G8-CV8!CT(6V&CVC.V!+?NNTAY=6;MZ:]Y_KMCIIJ+7D!-*5&DU.$?&_]+WG!: ;"1S(.C[,Y26M#6U4L$6!H MTTW!U MHO,I/?I;YO&*4Q[4+GW59U6KIKJ)B.7IJ#N7IK-XKE369@C7>*<-4KU-P20487U?'&0VX M0+!6H7-2L P":.%)0K_V[12).XU7A! MD\CP,3R<*.GUS?,C_8T73??R+D$? M'HF1\^X9@\1T=H,>+>6N*,#$.S?.$@6FP" ='= M/WS_5VBLL^.%LJH.:GA#.\J&@ M>:GJ*K.D4W4,#L16]'PQ81#%T0D95<_3 ?Y3REDIT"0V!4YT1A7N+;5 4E.W M4=3M*[PBU2CM%WENS\57Z?"5I$@KO7R^D\M6RA&0@+S?]?LG@L*>@8.W%\= MCMT:O@J!8S7PV.Y=AUR)[];M)>;5NW/-&\R3&]=2/EZEQE1WO6/4IOXB@+8< MA#L#3=F)7] (+*I QM:-CO@07R]V$O+J=>+P-O*D#RUDXEP7MAE]+?\D?ZQ_ MDO^!AM'RE_\#4$L#!!0 ( />!J5B>*A?CKV$ .S(" 5 :6YT="TR M,#(T,#,S,5]P&UL[;U;<^0VEB[Z?B+.?_#Q>6;;+OW__^T,P>;BXN?G^NRP/TSA, M2(K^_GU*OO^?_^/__K_^\_\)@L\H133,4?S=X^:[V;)(8T0OR0I]][_/[V^_ M"[[[\:?_^.GCY,MWO\\NOOOIQY]^#G[\&/SX*0C^QW\F./WV'_Q_'L,,?<>( M2+/RQ[]_O\SS]7_\\,/S\_/?7AYI\C="%S_\]../'W[8M?Y^VYS_-<[W'8X; M?_RA^N.^Z;NAGS^4;<\^??KT0_G7?=,,US5D@Y[]\+^_W#Y$2[0* YQR1"). M2X;_(RM_>4NB,"]A5++PG; %_RG8-0OXKX*SGX(/9W][R>+O&>K??5=!1TF" M[M'\._[?W^]O7GT3ISG*\K]%9/4#!_W'#Q_.?N#M?F TYVB%TCQ(28Z"LX]! M5CQFZ*^"_PH]L?]E_)3#+RF:__U[-E >[(;@%/R_\!'RS9JME0ROU@GZ_H^9>SW3+*4/2W!7GZ M(4:X_#C_1PE$"0+[X9]7:8[S#5OK(4YWGTO"1Y3\_7O1GRMJ$KY*"-U"TA$U MMV@1)M4W)R\XJR%(T$*'IO>K@?_FGU_9)&0S;/&8Y#:/\ M#3F:O1K#-@^SQW)C%5FP",-UA1U*\FSWFP.(VU_\\Q)G44*R@J(96S;G;/QO M BXT>HR7@^ G*SSL%P.3#^B&_?/MBE8WM$/O+'Q,D(K65XW,TKF7DU=<3&;[ M^1:1K&HOH_Y8SD]H]!VA3#GX^_=,P6!_F2-*47Q;?4YX&);BOJ2)?; \T/^# MKU04__W[G!9[#$,:O3L]7@^T;?'#.J3\D(B6.(EWO>>4K/2%$H%-+/MP3[#D M3&=#MT:P >PVTDB<](>.F44C.UB)2A$8._.*Y4\ >@<8@K.Q0@ ]J%Q9#!!M MB&@?, =T_O.'6ANB8\/H-V;?<7H(Q6@_44"3J+:O,6-(\G5O!GDSR)M!8S*# M;K9;>5-#FH )2!=ORIDWY<9UFGMCR!M#WACRQI WADP:0_"SV[0]]$M >5RE M0 %G,(A(6C*1!<\X7P91D>5DQ22PIJ6D.:HQ&ZH17=ZZ\M:5MZ[&9%W=5YO\ MFNWQB^T6_Y-M\(OM_E996KK=O=7EK2YO=7FKRUM=WNKR5M=PK*YFY[AI"^QC ML" D?L9)$H1I'+!N8;K ;*:#,,L0LTTT;2_P>,:L+DV*O+WE[2UO;XW)WOJ\ MW=Z3-+[9;^Y)N;?A\:UF@WC;R]M>WO;RMI>WO;SMY6VOX=A>;4YS@Q983**B M_ H[EU MP6441>$%B=]J0:(_]TE-0?EFNV;;($S^@4)ZE<:7;/+J*%,T[9'*R^TJJKY] MAR@F\37[79VQJFQKC$Z.$8S*=RT-T'ASV(4B"P+:W"RU=?8#I*D!*JO5)MY" MTG8&Z/O_BI RC3[9W*,UH6]M>D!+ S3.:)AFF,^>DDA14Q-4LD_(*#OZ.&8'=K;]#]^=9T*OHJ2M*3KY"3>E,_(L]GT*6YJB\8XP%2;Y__%:<$JK M&YNBM%3YI_2.DB=<%0J0TBIHWCNU%XC'/)(;IMZ]_#?:",D4M.N?/K):D?0A M9_K_PY+9']FTR,MB%#BM4QKAG?JGO%++*@G(/LQGN%;E@#3OG=JA!#VJSUVM M$%TP$#Y3\IPOV72NPU2\-J6M>Z?U&B?H:[%Z1%1(X/LF1JBB%TRF+ @5(U?; MJG?:;M*(4+;,2U6P%'P7I&#B92,5ZJ!>!FAGVE<8Y?@),1TQW.Y:"=&RYKU3 M>X\6F+M?TOQKN!)#6]^L=^H>EBA)5)N[KE'_E*W")#DO,J:&96*17=NJ=]IF MXP=6DBW/FP)*E89HN:]$C5 XH*RD X^^EQAO-: M*UK4Q !55R_1,DP72"!#9,UZI(X9F5R?>]BL'DE20U;MW]V)6,JVC_/!)Y!; MZ11"4#I P#V&CBZ/]]P2L(GKZ$)10")3#,&(_.0&(I)X%!B*#VY 8LX@5'Y MV0U4@ $N,"P?781%$%$#@_*+6Z"\CT> D?C5+22D@2TP*+^Y!8HD'@F&Y)-; MD,ACBW US2G55>1@AL/AE-JJX2J&(^2(&JOA%(1CXXA>"PS%PW%Q1+,%!?_A MJ#BBV,+C]W!H'%%OH6D8<& 5A%C@E<#HHT+&+,VU7(+%&.F6:N4X@ M;K*@]#I;Y NXK&"=K/,A75SJ#M;I%]_ATNSE"SM!Z)W.]R6-[D@5.U=4#]/I MZD*QJL[IG%$49@7=E,MW*^[+12P@6=G>G<3U1FO,>KTMG]1O?F&<7CJ_KRC5 MK.A<"Z/-N24C!:J)P@[WZ[F'D-P$ ",ST-!2>V3J# LP*@.-*K5'!> !'F?N MOQXTVNXF,#P#C34UAJ0?D,YESC[ M+[3[6>?F_58"MA[O*Q/CY\#2.QE?RW-H.I^^.X7>D"YN:-8ESR3==%ZJ)CPQ M=3HO;^CQU$.22K)ETA&97MW0B+^]1'_^HB/ M%359%2KUB336%EU!2"U&2?,CV1F0E/$VD)[N2BP)L*L UK@K: ""L3!5Q1E M("*EN6/$N7ACCWD,8PDLGGP>@^;+6"K;WK2K_Z<@*U8KMN.Y?SS#B[0L',*? MCZJR+'"Z"-8DP1%&N@& )D,;"PLT)\X'"WH-%I152.;W)%JR>41TDL95!8[Y M5_3\#T*_B9WU>CT[(/4J05%.28JC&?NBF#!9NY,(&60T/W(DL9\.RXW]\,^R MAA.B3-;F&VZ=U*PY5;/>:;Q'ZX)&RS!#>Q7G+3VUN[=1W_&ZUL?/@:7@P -: M\'4A]ZO7M3%+Y>&@G.S/R;OM,:EZXENOLQU7^\Y WD*=R=S8D#X^P.$?*/\:,8"FAC$IN,#'X+P$"L.-", ]9V-^?AEG_=> M?)=3_AUPB1]*F943Q"2"T"TN;VJ%5J$O7-W8>DZ_OZ%@C_(+LGIDVZ],2WM_ MF"H8@74>;VAB_!S8"JYXQ_CXE&KO&/>.<>\8UW?8*+1!HJ>'C1T3?Y_ I\K[ M5/G>?>$0$W3L6$#%:Y?+PGN_O?=[+ >(IO>[B=5NVOO]>&6K8%76 MZJFL#TU'N'(<8SYQ("7>/=ZK>WSX_FD=WUWUTL8#?VCCEE2OSLK+FW1=Y%FY2#[4!EHU>MCAH&YU2 6P M1D_K'&7O-[0V;\HQ['-YSY\QI3A=P)8@H*M1GJ;Y$M%M"?%;'#[BI#3KIEI)<478%,*VU!':6N().!V)=9?V['Y?4\T*[LG1TM"4-T];] M&&YW8>RQO(GDP]AZ86P-[[#IZ/6OP2K\%Z%!5&0Y63'+73-J+>QO+%JMH,!' MJ4\F2BT@D>VT,+M)V;A%^8F;-")T32C/SQ+?/(/WZOWRU!>^OB]VRUMPQ4O< MJ'?ZJFK1KP@0WNU2MC7J8+X@3.-)\ZK*YCW.OITSHVNY"NDW:0P&VLTR+YL] M69(H++2;;5YF[/MZ;+SM89<#^%4UG:YV>>((ZVV4]SW,_HD@;R@+W& MFQ(S?@YL71KD]C)IH, YC$^].20#26H.NH*4VAL,MLE<":'H;BX=N\(5C!HM&XE'PA5< MF@@>@$GA?K06XOP<^R)1JS*-?-8^-NMCL\[I)9JQ67UOJ^D0[:<@06&F_;36 MVV[& K+U'_9Q6)>+:4X*=BR11YR@VW+N)41(6W9 RE7ZA"E)^7H,DQF*EBE) MR (C=AI^1G05IAO)*UR:?3L@MT3A.HQX"M7F)GW Z2)D1S82$PGK<1JQ_3M* M(I1EKZ?JJJ!D+0$0W*D# O]DY]62%!F:I/%T/L<1>EB'D80X4 >C[O<)I6&Z MV$YA&G\E:7CXS=$;T?+;< U'L5X;U5=Z-4^Y#VX.(;A9GC-,/2YI*/AY2%>2 M!:1J;IUVZ196=S!,?Y8AM'T .%U4JI(J<036R8>:S8>:.Z>3NY6G\Z,S5;(Q MI6U]@-P'R-_"X0/DQ^Y#=P/D4-7/U[V5BU#2D97C"EI*39#HZUVN8.,K*/L* MRBT6!\S(<@4/B"#1=9JY$A '8Z/C+G8E( P&IYG#WY6@,1@F38^Y*WM,+8\! MMK4KPEBI X/#>ZY(&9]VXM-.FJ:=Z/AJ32>;K,K)O25A.EE05"X&"2'*UAV0=,F6X"'S\I:DBYPI4]?X!<4W_'5T MMI3OV;+ES<24-AZDEH3F_.-_A!1ST=Z4"T\(_KFSH1C[3YG"^?.8.)RHHA3:T%5Q!2QUE5'A!7TA#D,E;+<^T*)("T09"; MP!4\(.)$$0HZG0PFM??"F66A.'F5X2;W\Y:@P197E@1,Y=#P-;DB-P"G+#2M MPOU4-W@0>.S[!FK\=WEG8^#"%+!36J;UN+*!M)%JE#L$1NOCL-$RD5S\RU@A M\,G%TN1B4 J'\:SBLR#+&16/(8,J8,W7*,W*CP7K)-S[;:#9QK#1S&4AZ]#C MLY-[S4Z^6&(TOWI!49'C)U3=!Z23-"Y_OX_R;7\OSCQL,4Q?3-1^FI%TB9]P MQM;:'5O5..:12TVVF@[<1;T^MC?)!LEJ!@J:=/#Q&[8-UWPOIDQ@4A2Q@21T MJ%MWD;]<#IA-Y[,E>D I)O1+F(8+1;8NO-=IY#K?(3HG_ )GA$J1?,^D.,41 MLUD>N)B6% ?4Z=A)!B8,OB"\)R:+1Z]D=J=/T?X5IP>;LC#7YV)SP1N/T?KMAAO.$J2GL[&6Z M2%R$B> :AK2=>2K_Q/GR'B6E"9 M\7I&) IZBQ',EH)]#FFL2(>M;6,I#WPZ MOSBRQ$HP47Q!LCPK9>+YD4Q45E?L:-3Q9L2/GP-+.?T[\Z4\O*9KX;59<'NC MU/-#EB>I2;9\71,K-$HSWNL;&XL1!L;A[)FTY/#="/Y&AP/%B[?FAN1 MJ6EA@T*IJ*IMXV_&^)LQ;^'P-V-VB+A],T9N !.32HXK4-:= P0D@EU!H-:T M(C"C9NP8J+UZI /7V=A1@F?+B,WTL>$*+E)]M%F.D2M21:B#-,W"&SLP\ -(-]=S[,A I$P? M.6ZN7+QJ?7H)PG"N7+4"G%XM4N/&OHK@.OS;:]-MMEAJ_QZ[4_!6CKGZMNH@;K@D9+ M1FFCZ[6PT6;ACX'/WNZ/19OR/4^'RVJL]6]=FJ/L'0I\[U$JK4TM]=0<2$*VG@\6OO M2M)T)36R)HV[BCXE/W409U$JG',N8=@E'C'4*^.H2$Y-L25 M9W[^\>R_E;5FZAMU0\!D]4A1DBAI$+8;KWMD_!S8(WA%& M#27Q,O@;KVV',UPT84<9P,TE;VR9;JGK2]7<.\&\$\P[P;P3S#O! MNE\5BE.#Z$II5W!1V_^0\]85AY!ZE4#,!U=\0W T%(:,*\O#^PN]O[!IZEDW M!IEQ1^+/0886Y<\X+5/A^8=TO8C20/_AR?@/A^5U&C\'EOQF#]66 MOD=K0LM206 7F49/[YGQGAGOF?&>&>^9&:=1-5J[TAM54J-*^PCOPGYZI6>C M**YPNDGYW3LZHV',;QH?E7K\7GS<'H]2G;11?#A@U4.VLIV:\M':4JKGEOWP MSW@WFO3.J.K- >2>FAKA%(XI#;Q!(/9!LEQG31 R4'T M=FY_FHA!/5T/&N"Z[L_Q/5ADX$(4#(YVW9[!@@.3-/T5*Q@L,.#SS& ,(,.+ M%,]Q%+)_AU%$BI1KV<&:)#C"*-O_ QX0T!W11'2@&4T^5-!KJ. \S'#&*\,< M;?LT_CU#T_E5EN,5F[SLCD_,1GKON\4P'3!Q0W_.N3+$,Y9!Y;#-,!$T>RHK'4..:FB_&,^O@G>X+NMF0H D7J#D;I/R\R M=NYFV059/>*T>C6@6BX"^M4=C-)_$69+7F>-_>?JKP(_A0GWR!QJ9M;_7P2C]5R%-V7[([A M:PS!F #V,LK)=8CI'V%2H"\H MY,[6,D4,<%HU[F^4NYN4*8MH%K[ F%$U-TS[$\.24.!$J)H;I?V6B5N$;MF2 M@&YP0 ^C''Q%ST?G'B4I^V=4.<]UMD?385WI-@T(=4+0>'^6V;HE13"@[ M"C")F0*?A%E6JHRE61/_J\ARODHN4191O#[.;GO+5,-A#-^NXA8*CX@"Q8&Z M@V'ZF7 M$*.*,,V>PPAE ]C/;)9/;0WIZB4=IB:^>FY)KGBV&,GG83GP..Q# M\9BAOPI&P]63[M&HU=>=H%5W3@.?=R;*.P,>]&//M/$Y9S[GS.>I:*41PC)Q2U]OE7!A,R2]+V?P49,5J%=)-0.;*&%!>FF@[@H$U M>UI\P5A!G]8T^A3^7E/XZP*6;2=.E47=S<(P%0F/EB@N^'.P?R*\6.;,VGU" M-%R@KP4OHL?T*"ZNLS)"HXR,MQG+YU4XD%9S/$0Y M'O)5-?:HK4_M\*D=/K7C& G!:4TS._:9;&9 !IAZ:@W?^YPL])&N^B']R]F#&5'<6:UGJG7_%VO+?CATSGZ=GQTI/0&^K>4/>&NC?4O:&N M8ZCWH#&YLJ#4,)K4V%VYG:!&M96!:-I_]',P#S$-GGARINP4*RC%Z:*\. >NF-1D MK,%R_7M*'C-$RSLD-^FZR/G1GD:L%\@MU^>GO"?%>U*&3.?I>5+ ,MY[5;Q7 MQ7M5O%?%>U4 [H#V>J4KRZ9;L)KIFZ9= 1^#Q?;R;1"F<8#W_I\@+!U S3P" MFJ,:)FG3LE^*VW5(=>6-\^_2^: MFP'DAFFTP8SG=5R+'=Z:N1O:(UGB6.'FU^2ZT6A6.">R&;HN:=SUYUY-W/7G7DW<]B;TI;2PW M5]8)&!T=Y?ITTFTZL47 < V\P) .7 T-5C!4 Z\I!(>J>[/.M&OWEX!6!0(# MCD$0D;2L?9,%SSA?!E&1Y63%E,5F'MYF@QMS]+8AS_M[[>2#-9LSD%NRS7(P M9(U?XBQ<+"B#O:SW-M\6]P09Z5I]O8_)^YB&3.?I^9@:2B?O:O*N)N]J\JXF M[VI26W4--"33YMIO =Z6*F]JIM9#8L"WO M?U%0NI.%.ID,D.[>9/(FTY#I/#V322J)O&'D#2-O&'G#R!M&>H%4N"IDVC;Z M%"3E&T7-S")!;V,6D?3[WABR8PP))@5D!TDGU)":6#[:=4$RF,6C:&V8D[9^0^A+F!67_!7+5>"1OTGF3;LATGIY))Q*JWIKSUIRWYKPU MYZTYM34'4O-<61@0.%KJAZ;MW+,?@Q@]YLW,W/K.QJQ>]D6OH"OVTR-FT MI'&YVG.NN4SG%VS[8KF9V'*4/NWT^F4%,M-E*])XH'(K;C!B6/*G[6>(KBX9 M=9H!2[UAO)7KK=PATWEZ5JY )GDCUQNYWLCU1JXW\9.2D;%(S/1XX UY]D36\(HOF?_2W'$_O7 2:V>0)U$.7Z"QF;;#&7)1+]B.Y]L$'I M] E'J*3TG$_2Q=$<39*2KNTM@MT[-'>(8A)SSZNRD'_OW[.$7CWYY9Q/U_R? M>NNGNX&MXW$7;OCNGSR'-#XFFU>2K>:8OT]4_:XQ-NT_XIU%WEDT9#I/T%FD MIREX)Y)W(GDGDG2>2CG>D5RW2'0=''TTO/Y9OM'#5]>D]',+^K]HM*3C8 . M<..4%;;KX?)XO MT9>0?D/Y398581JAAY#9RA/&?[FF)53I=>V V)TB>D%6CS@M 3G$WF]B]DD\ MQUSJ51)Q$OU58";=)VF\N^2/&7D\Q(R.?\.O/M0QV./G.EU"C+X5SC)&WC5" M=XA&7)HMV&K]3$F6W5$2(137AE-@/3LE]BL3D3-RS?!,(QPF>X7QLA*/L]?2 M\9A8O9Y&?7.[E5(N@0R7FD:U&I#4-P[N9YT;L:=L>BXIJ%D/1KN@[_&O,HJ8XTTMDU=04@M+$AS5<$9D)2!0)!7P)7P%F!7 M ?RXKJ !B!+##F1G (&(E.8N=5#Q::- MS[8_N3)8N'1=6?W)G<%"U$\4! SDS\X!V4,D 8SF1Y?1-!!8 /]R^B!-IT1 M 8;VU]%#V\Z9# ;JM]$#I9^:!0;GT^C!:>6YAZO&X[<;6F0^F4Z;_2E@HG(5 MT@W/):61;LJ#1,LS0WLG^EIY:0=ZHK]$T"5ZB[IF' M$*X)O23%8SXO=F9O=MC+?U)&I^SY'.6#!PO@XL]=&15GV FD]IP/Z%\I>[]RR>4R=3 P7U" MZ4EP5[OI8.B'(#SDG+6,=H+&,A;.U*#&QRO[+11DN1I/FK(9OT5AAG:IJ+44 MO&]VHC5:E &H-",)CAD5<;E>>/J9* @E;VJ%5F'D2=W8;*B)HI"_@\1V92G: MV)&Q1LQF%,64!,TM5\3PU7M\]9[15.\YXN,>)5P.E,^.*;A7#S <#GU](E^? MR-VOR97ZXPS1U73.70DTC-Y6081W]!6+NN"&DCG.;R5T[QL$ MJ1T2MV6:103N_FRMX(W/\^C0>^[S/'R>A^WXH\(H)WKF\-@QT2@XTM!(=04A M7Z'&5ZAIG-H!\02.'0NH>.UR6?AD#I_,X6 RAY$B*^YD1T#*;(R M_AR/(159&7].R$B*K#A=S088K@&#-?Z*-,V]TV"0W*DM PVY@Z%QI9J,.I4& M#(D[-61$?GRXMNJ.=B\)NIC.@/PYF(>8!D^\E$^P8FNVH*A:LNVR(;7'-989 MV9 RGR79:Y;D>/(#=?(.PJ2LM[Q$*.=)\ZK$*45SZ[3+4]>4'6SG?!QN-[RR M$_97'2X*RN6[B+_& UH*75\S,5>6:#O?[/_Y7YC12*/EYI8=QXED+>IUML77 MEX/XOJ;HKP*E49WH:M#3#D#[79XAH]['!0AZM4;&CTM,Y1]GXK M:/.F',,^E_L@^ I-5L%EA*F-VD&9-SI1G 4_7HFE">8B8N@@/OU7OAE-?8",J[ MB!OU3E_U,O@K H1U791MC;J)V?G"WT6JSI=[G'T[9T;E[(D44AH-]N\S-CW]=AXV\,N!X MT24-P %[F0UI\7?2MWF+7U']XSV@MCYPZ .'/G#H X?-KM1*]$RBI>*-'0P= MS8,T." =QJ=>P92!)%6P74%*[3\$:[FN.-UU-Y>.WN8*1HV6C<3&X;?!2-8RQF"6,$!^J]*],]/[*Q*1@$I \X@25WZB_\P%HV0$I5^D3IB3E M/(;)#$7+E"1D@1%3:#XCN@K3C>0Q>,V^'9!;HG =1F6ZQTWZ@--%R+0N)"82 MUN.THO#ENT99]GK*K@I>&$,,)+A3!P3^R<[7)2DR_HS7=#['$7I8AY&$.% ' M_S"(!O4T3!=5=C2#]"M)P\-ORHI%8<0EM/RZ6L-1;#^]X9] L4 Y,Z I%]67 MJ/KO3?JZKM$^R4_ "[B_M2<(&!&[LDP%/R_I2C(UJN;6:9=N#G4'__Q#N\O# M6GMC6#OA-37W>+',I_/?V='-L!9-A+3/$/F8K C-\;]+,^;J98W23)0SH#N, M?V'"9KY&YW3RJ-5T?J0I20X%:5N?9>*S3-S.,H&JK?X-"+F@(!U9:*Z@I=2U MB;YFZPHV_C41_YI(B\4!,V-=P0,B2'3=E:YDE8"QT7'8NY)5 0:G6$L5('!@=879$R/G?+YVXUR5)JZZ$\P<2NSA^=&/\+ M3YT_.N'.6TU:T8W^1/%@\>GQG1MW7DYJ' '8^7.PTG:R)A)N3W[,8C18]XR MXU8QBK&$6Q =/M_6Z7S;53FYMR1,)PN*RL4A(439N@.2+MF2/-S;N2!/* W3 M_!J_H/AB&=(%XK^BX0+=2-Y^15V\= M/^(\#N%<:0_=([N7-'R^0Q236$W_H6V/!.U>S&0@L=/VBB'&U+9+- ^+Y&T> MBV;O'HF^)>F"?7A5KM=C&G@S\=YL/$CG##PLF<')/_Y'2#&WXILRH3E0!XQ\ MF9V':7V!&>'?3RLS?1KEA#'/_G &.##4K3NI$D=7' =91;BZ%KU75U.]87]4 M7$WYW+T-6H6EX-2-S5:*8N8.SG<1*5FI,6%#B_3*BW))FAJE^;5DEF L;FB1 M7@8@FJSX@\\@J@_-+>5RBA61J_D<13E^0H>+J""6%&,,@D]>?DBZ&U3-+=+. MCQ@0U;SA(-#^/2TR%)\32LDS3A<7X9I)&285X=M$.H)%'O]$W$&+XDEEY1TO M?0E?DEZ6>-F1($]/?]/*UNT9G")FAI;'E8#0XR8#H!*@+ZB:6Z?]EOMCZDOV MZG:SSLN7\ 6OBM4[<:+!EV@(6ZN-&>%E^BF3+B(NCII8I#+?DJ HU2MK:I5F M^0Z0-C9*=YGVA.+LFI+53985_%F2Z1RP3M0=+:V>>_1$DB>^UU[O1-FM8U ? MLW>1N*>)([D7'<++4^];^OM>OCZOOSGE;TZU+6JG] $2/>_;V#$!>)2(KF_ M%4PD-@G1\1ZZ@H=4,R5ZNJ SF*BL5]+42G0%(76RL6!$SET/ "N2(W M *\+28L>\;J/'?9>&"@0M3P$YIF?#HR@;21JI15F5_UW6&(FZZ MNV&K?0MG*!! P8G>,,6FA]V@C=IZ^Q":"#^A&[7PK/!3NA^K=;%D!.\5]LB MW^X$+]C>2A+,3O .K2(Q$(S(KZ-'I.7E+C!2O[F(5&PP95@%KSK6Z\F/!.@G3MC5)FHUNKE9)&_I\#9->:YA<+#&:7[V@J.!G M3U4NET[2N/S]/LUU^WOQ+>T6P_3%1.VG&4F7^ EG;.W=L56.8[9()2\$=CIP M!XQ>L;U*-DCVJ*&@20IU4?@FF><\+K'$>H%-7W3+I3'+$C]8&+;\GKA3H=NR!T MM\.F0NCK2*H[+$YYM#DVU-S,ES2./R?[84EB4ALX/9=4N>$;WG(]1Q MV?,G.RU.U NMOZ_7IN$Y?'(8\%S]593E\W=V?#;-EXC.EF$Z79' 1H37X\\:LT/M&0[T<)"&'U^JBHZ04--D2KV=$XBIH,8+1V[NE3%24!ZAM M8Y3*G>'Z@.@3?[.'B[_S=\(_*:EA_^(%X".R2/&_F8 L M_U9:#:>GKUFZ3P[BYBM)GYC(0)6JE_XNW.3(-:2X1MI+E*4.FKTGH3RO9&J?]:\$]/Y_L2YP]H4:K@ NJ% M[2VASU4O?KU:;=(:]7Z89:'S)A/%Y7NUA/(T,\/ M%=U,>H:7?H0T!FER?7YJ")B51#)FHB6:IO7NWA8C#(S#V3-IR>&[$UIB6C=4J6Q?CCPV?[7&Q]_IL?[XF=(XP^WGG8"A[B^M> M&OFZKZ5ILY9FYW1N)8S$5533P@:%4O6BMHVO20I89F,O%'?2-4GE83UB4OUV M!+M25T^)!R!VZ@H6\H)Z@%2YL6\2T"FKON8T]O4 AP%Z MRZJ_ND1#V2%*I\38]P;0#FD<1!C[IE'@TSC7VQ5_ GJ#P*UU@+B_DGF#P*>C"S]C7T5PN=2Z(,78 M%Q0TM*;*_\W?86/9T9ZV_ ML]P].+NY@]*?93)LQ/O.)N_/JAD%:86!XQU_#WO9%8KAA MX8[59NF6!1QJ=XPX6S>XX5B[8[_9NND*QWK\%IWE>I!PJ,=O\)DL+ G'U1W+ M#USQ" Z.8T::]6H8!^0-/7[Q4X"V3L#J'8A@7=!HR7CLY/&+9J.;>_RB#7W^ M\8M>'[]XE6I_MYT6>45;8)?3>CB@\7EZB;.(>_-K2W5V.;2EN^G;N :*ZR7_ M]G7'-WSK=?:5!)4T#KV28&.U8+?&^9M[7T+Z#>5W%$=H)Y:XCUS =9^?'&K- M(A%+K_TKDR)?$BJI?=OY=VSB54Z>C-&R@4T*,_Z8) .R7&6(EK^3$5S7WEIS+QX+Q/:YKZ[Z* MBJ^BX@M?^)(.K:[0:7D&7$'$1(KSP.]5^A1GDYYPJ!%U@JG-'2FR)YBCW(DB M?*H9R+4>@E--(89X'WP^<*_NQA-*_NTS0G)"N;[M B[&P^D?#@'E1Y2B.<[+ M2'+6-I"N.ZZY$'HSRGSPO-?@^26;AY3OD#2G^+$HKQ.Q2=GJ2_1+F+,-F2Z. M__[JGDQ=M+?MF)T^[2L@YDOX@E?%:I*F;,7)*&,D[91'<7R[\X]T"L&(+P$2=,6%PD89;A M.4;Q5Y)&!>4GK"",H#V.I=")0KAP=8@B_MN0;HX;2=^1;3?H,)$0R)E(N@0: M#C@Z!*;S\H^= [$==UAXO#J&CO^8J0ZW[@8>(2*--HO.R)8PN6>2C);'."#] M2][8,MW2E#!5)*<%V] M2B!&K2MQ=C@:"O/:E>7A4.Y%+_[^$\S!Z,&; M<(+)&YW[[4XPR:-[5]\)I7+T$T\XP22.UM$HX_D,88HB_M1-ZER5^C]:$YMPVW)6A$3BDQ1W\W5'O]O=N M?^_V'XO';K1.2^^Q4Q954Y].QI77LZJH59E<'D1'.G=5W:JJ>$7*(F5!&.7X MB:WNO;Y7X;-D]DP4)GO.H2IN#Y\VIPCW1KQ7EWM5EP_S:&!&C[5MHQ\>1^&> M;>W#JQ=$(YQQL5@)2I'VV==WO&'@#0. 86!V!WN[PML5WJX8A%UA"0FI2='S M86C:#OG Y.)?!<[P5D:R?[/9"<(L0\Q("M,X2+8Q (PR_NMBQ?Z\%:&:ADC4M)LD\K (BXLMCHC8=?/Z\R)C R#(F#QYQ6G[C\!3?#7^L M%<\QW^^3ZQ46H^'8BFT!&I$^L/:$;(WANO^4 ;H=\ M6 NB5/QQ%[9^R?%/"'Z2(:9<2]2_OK;&0,&PZH/JK^->"*( MJ^-__57-.!6(@8&L_@IKG C00H]K?^4V3@19=6R[OV(<)P(QV'?87]6.$T$: MY/D&H_R;1[FC_ (PY)\<@'P8":UP@\4E\\U&G@<<:6\;MLK^@ /M@DEH/-4; M#J\W!UNG,\#!UJ^U2/(P<0AJW2BRZ2MH'X/%SH7%0WEX[^C:!?BB);];E[&_ M'%HVNX'6Q:>,74#KCEA__\SE^V?"L'D7"PAT2:B[E>KO")W4'2%H)M'/@Z;N MHU7J=L?\\0/L"HKKNE@JU[@CZ9I0A!=I93-&FQD-TRPIY>5GMJUN229:SO ! M?$%*GX_633Y:)^>=3T?SZ6@^'/1MB?XRP:K-=97&0P;LK0D\9!=ROF2_K1Y](?/RIRBD M=,/V0? 4)@7BO\5IS)^3P3E*\!.J&[!__W,O= [2>=TCI][S[3W?-E9?YV[S M'O>(][F?E,_]9K]*;ODJ>7NOX.HE2HJ8K2N%]UMW&$L^? 69C=W.K<>UY(V^ M>2TCWM*],PR47$M[>T^[][2;][3WS>]=]-[-WV/OL2V M!L4)NO,;JN,GZ-GOW%P;OX=[J!YM=SW8WF/M/=;F#-UA>JB'Y)&>K C-\;_+ MF9[.WYX) G^,O%.0_C88=[1WKING_+H'5W.K,2VY8B4TBZNDRCM9"B!5>Y=Y4-UE7O7N'>->]>X=XU[U[AWC7O7N$7OI9YB?(*.\"::]@EZ MP3NU)'M(>?]4X9' MX]O7)MJ[[7MUVS>W>C5FLAN7N/;2L>^2.Y9J5Q6I7]F"GCVCY E](6F^;."; M! PZ/.=D#='WB.\O=I)-Y]W6PDV*;F#8#38:SF?L MRR(?9,/1QL/[,^F.\V?BW=_>_6W(_:US+GO/]NEXMDVXYD;KG;3OFANC,Z6I MKG>RGKNN# COTVNF=O57OL(EW.H4=3!R^F6HW4&NSKHS[1K]%"0HS% 6K$*F M!U8%\LF\^N6KYV.;N4&;#F_,Y=F.0._>[-6]>8O8]D'3-:)LOM/%+9^47:WV MS8RN#=GOTIFY"S>RR$%GV MT.Z6WH.'D@?T*3<=SI(O"4JNPF?:=)C!\BKSDFJ/,X*Y%7M&-4<9,J\ZP9#F M PX1@=_3F-''4V91?/42\:2_S776GDYR@K[XKP^P$O?0M38 3],^W-A'[\\Q;DO.=P?7> M?0#&ZN/HUU='GE(P8K\X\_QH4R\D&*I?';HHT(W]#X;N-Q=D&,BQ8#IN>/8C M,S0?\UWZV!NCE*0+)B1659-FDGF1-H^;+!A3Y:[LJV[C\ M,IH?N?O83X?5P'[XYP5),Y+@F)].Y93S![??+PM(4RNTUNXJ6&.S'GLVRS,V MRY=LDD6.^*,FMN*C1R1\V:_2>[3>ZDS3^1W%:83787*30H.D;<8,SH:/@RI< MVF2LL? M#9TV&FPTG(N#J V&&C[76O'4EL-:0L.'Z#IUK0\A1-="\_)!.O># M=""UEN@IE&/'1!VU@QL#8X]@0M>'KP_EZT,-(Y[]A.@C&58Z._>+9+T-6YQ$R'UWX.YB&F MVZK#*Q1FS* LJ7U;KOBH69D-^H22X$,0,0F,63..'],H<5Q&$$G:P8T^"Y09 M"^A9X\U' GN-!%[L)^;B>%YN#],BCA#J]NTS+5VR\F*I^D]B@K*#L+%>9CA[/>4/&:(/G&;\R9= M%SG[,V&'))L1/C-O>9(^IF+LNW;0_')8[W_B?/F.@^PU"Z_YW;.S*R=[D_+W M_'@)@2G;,/2"K-@AMT1L5SRQX=@))JRP9HN>(+430&G*<";@N!RK8W"EW[+U MY'^O1T0&)-57(%9W6,1$,;=R5V!EY\+O@) .0PS%J^]OFU>*^2@=Y7\N( 65%O T@;SPFI-NR UQLZ5CP^NC9DL4?R8D MYN^S3>?WB(L0)/*C:/2TPY'XR>;C)I9NU^Q)N ^?O[!U0G&8Z,&N[&B'GS\) M_7:3WE'"+PAK,:3N:;:\&-<]]L3MH7XHUNN$IWVF\1=$N2,JQAGZG2>HE:;9 M(N5;7L!K)V-ZMZIWJ[9QJ\(/(N\,/1UGJ*]--F@?RQ K7^BJ(LZM$Q@Z4+W& M.5>E%)X.5:'^,K"'")RVW=5?1O9@$]1E!I[Q4CQG3 $CT;?'D $3L.;\@9$J M$+U.PK3Z8T#6I5^NC&)7?PRSK%AM?]NP1D_W7S97O*;[^,ODL%KX"U)1CN)+_(1C)FKNV7(4^2%, M?7?\:/Y!$C8,CU&9QK/^R^-%]!YGWZXI0C?L)&:'=FX*3]EWAX5F)F+K(&?3 M^(X='E_#%9+FUO?Y*?.8/:I7PJ/.SN+7_LYDR/7Z0>]&]V[T5N6$>E LO]@\N#+/QVG%W$Q9HT..305AE+/=EF\,1*.$WQID_$E!K8\X#3_B))S" MSF-,BL4R%!^HZ+RH[(;LFM YPKR.,L_48!(-5Q<2LYOTKKPP\R?"BR43&F,T\770A+4[?P[EDJPC!MIQ, MTJ+7YP\-,W\(.(F=9!!I+1A_,_V(RGN&&Q.8 M#+O2E)#>2I>V'5;(3'2*7/U5L'5QDS)&BM(4*.OLS)9A^EISXM65^\D8TJ=@ M=)E$4!:Y>OKF$"]] Y=L[^\S@VWAKT6<(_/RVC-C'/G7G[<5*3;$WO 6?D/Z M')F=KV2K0_23DZ;[_;'E4XT.WX'F5+7G;WB"!4Z:NZM^U+/BVE[YH^3;FI[S M^O/NJ?>O^1O>RF](W[!FQU=A\DF>/N,1ZOCS.8^GD_/H*P?YRD%&UQ/ +^X* M%KYJD,\GMA#\;^L]\WG& W+J]"<(QIPUVU/4Y 0+$0TO.'*:>C 108/IU1$CE"0X#BNO[_;764#F011F MRV">D.'RTUH4O^G;,\$7),UI&.5_ MXGQY460Y62%ZB\/'LAPODV-10;FTA7$ '*Q3ELKW3E&<7;,3X%7E^;N"/^N9 M(1Y>J.YXUC'1H'O'1//YGLZ_A.P\2Q'=\&MF['Q9<\%4/K;Y^;UD:#5&!^0W M+E-\B;.(%.R'%?_?.JXZ&CJPDPHRB?_%EGUYIO#ESHZ44ON8D7O$CIX()XA- M!]LW;&/^VL66Q)EF8?*:D6+,> MY3)AQU?*).V68Z83"' U28*EC+U30]E.!EXK%BL_Q?O3=LOXU0M_O7J!>.W\ MJ_D<":6$62+>/H=L".G+K7E:2;M9^%)>W&;_O6"_Q+EH#4*[&>:%F3X1+E"RJ,PC=D11W/\[_+W0G[@7,%,TP%(H>$09G8^LHB29[9$ M2(8Y;PDWC6>$*0>,KGQ3&B,BQ !=;>7D7A.*\"*]* V.:#-CZF/&<]I(RE5A MK@2=HSEKPW:X@#N-$6PQ^9F0^!DGR21B:XZ^KFHCX K2Q2@/1P+W+L0BL@6M M3%/ZWF#GM@8C:2/).U7V:V8.]\@/LQH0DV%-6#ITM;4IA'Z55VM(>\+J1QC, MU$D]+V ^0:-8YG3GI-F>-SORL/"8TAEB,/-YDSXQ#8)0';:.^@QG\^V]"A?A M&N=AHO!DZ \P%/YN^<_Z6T[1WS9W/+!5J4!YDYTFZ#^8;5;2=W!,3[(,"4U$ M8.\!;;W7Y#6>O]HA!C.%=Q2MF4JX,^#YHW=IQJ\5E+1KSBAD,'L37(GWS9\4 MY^B2/(ML__<-+56 ^(KR.D?S-4[#-'KE:!9P A_ DK<)3J#BW&L^T!#XO2G3 M'5K,:,T PYK1&@*;S2A@H"'P6Q,,TN.S9H!AS:A^E*WY0*;Y/83ZQ*P\%GXPKTI2Y+P0, UH?59AP+^FPYG MF_T9V:[#\R+#*6(K,ROS4"YV\T>%[Q?I#&')"#'-Y5 FHTGPL#]#!=076_7"Y/H)%THID+4 M?%A5@ 3$"Z2V'7$VVFHOE9B\YCG;"ET1TL6%BC4]T+E_,T6DHQTWL;;YBO4Z M*:$*D]T$WZ1S0E=5^JAB=>CU=J=DD-;V\)5_3J?RCW_M<-#5289XD;2M=ZP_ MM*P4LV@!!P'ZZ9S;:=+U9?:.@RM[UQAJ1S.EGWOZO?E".Z"FL<)C/Q+$*02:![O/^I2NEA(S/1[M;OCT4#W(>]H,: MHW,ES+FBG%)EO&F:;@]JM4WIW &*8B 6Q0]J,HN(2C+@7=, >X:ND:YKSUH MM2YA"LL0[T%GM7)V=(X>Y&Y$?YJE!;NJKP-%<%VM/_70 >S@M\3ZJQ@Y&AC; M%>'JK^#CN 6@QGW,_FHX.K(&%675X'JUML=_- !*SQ'8!6@XC-JN? =@!%Z' MA(.H[4P8#8C=5AB$(SH&[WO/5DHG*U/;5,D)HWM,.#:_^-1?*&B(OL*V%^$< M\QFV@.,(U%;W!WKW(<[,R\2>8(7?6.@O &!!,G:#9O/+OJYXQ%I)2/#E;U>2 ME5K@<+R'87=T' ND=(,=^%*-*^'.=K"UJR#NBAK8P[957TIS+,^G(PR[NB[< M8U!E,,J,)K;-:]&XDH0#4V:&5D>WQ^",^:4,FP*[A;[["^8,_(E8FZ\%]!?^ M&?037C:?#N@Q8C1$N=[HDJPKEJDN\Z_=[>+2U3V&RX:XAAJ6;')E%>FS_QZ[ M-D6@7'-Y] \GI+)4#ZZ0T:(JK071@[]CM$ U>CO#%:]X*^3@+UCTZ,2P$-]J M@UF;FFH'%'M_D38E.0K.?@QB[G$F1<[^DG+]/$A0SB$OGVDM+]^P)GF(D[V2 MH7Z4MOG8)MZE;4N=?YJVUZ=IOX1I-L&RMYR!0FY'%5Z75Q)CX7 ('-\N8*#B7K( \_R]?60]7(=M,U"5T1G MW^(G?Z'H%:S:)HF)5E.EY=>\7O&&L^4!#X?=\\R7\%Z$7"=LN MDKA[@Q&&PN%G*GX7&=IM*+PV]8'L)&:9:KF M%FB7VY&U;- J8624=@ MY 9>[;@E[1=.7<,W'/:N 'F[]G!>"SIAZ@ MFY(#AH%^LH!S!Y 4'[VT3N>$:5-L0"G+SLG=IFB]2S;MSX:P4'\4*HC:90_V M9SP\(?I(' &MZ4U0=UXX:9;U!P9*^V62T0 %24X#PS2&I^0[74].OQG?X8*R M74+Z+,AX(?I'_LY9$!T_=+9.PC0(DS(#B/],YD'>2K:8I>^+]1TU+3?=)@ MKB1U_USX^]V]WN\6UQ+L%61^ 8/IJAN$,M:&?V=B!*$0V321I/XA73^_F[#3G3 M_+5 JZ_A&Q3\G:N#$K'=NM([A,H>0^! <7L,T,J)P':S2PO MM2?3A%+^$FB9M'&^.;39OC93'@N'LR&-^3O8RNN8?7[*WU;QY;?;W*KH5V'U M%RY.Y\(%1/5Y]X8H2,MP!:%ZHX*8/"A<@5*=42"QX%P)I"O7$T!S= 4+2-86 MT#1S!1)-@:QP)+B27:&)BI[MXDJ:A29(VE:V*PD6FC@U\'2YLNU\M?E!9T$. M-C;;+))@,#H;D30C"8XYC0?CNGR[BK][75VD"XHT+&+,FL!#K@T'-A%';46: M#XYV$QSM*,)TSP[LM! YQVK;&*7R*J0I4[JR.T1W(@!' FJE;:U2?8F3XF@G M*.A^TWI(D;QF,3P[G/"$ISM*YEA49O6HA;5J>ER!O&5D7+/#\8(PB9 6;"E, M]V+T',T)OZ3&V\W"%Y1=O3!LV3F/TY!NRG/S*V%_37,FI+FI0.JK-I86\G8+[CT,(EK?M1L*O8JMIVQOAWKEVJAI:0OQ?(DH$[[D M-47R70CK-)R$CB:I'):X*-7BW3G*5_*?.%_NKN(SF*L<8IY5S/XO9J);R%OC MD6PD@,@GJKZ13U1PH*SFGP@OEOSJW!,3)0OTM> .R^E\:Z^4MDMV](Z9@)&& MHPR!TW?$R:N53!4[*U.Q\VW:8\*@"!V!L!EZ0 M46_-:/AQP0"-H7Z*YM(Q%M\$@ZQ=>V7 JQ 4A00CHU]N9>#+3QI'A"N3+JG7 M@*P<.# NJ=DM_,-PP%S2NT%Y4G!H!F[8=[&68#&58:3+\ANE%"T9J\R4"M!V MKCM.G85^Q'(:K1Z9/J5V,"FU1]-6Z0%,(9C.Q9%_20]+.2;:V5)6J"R-H1KP MKIEJCQ?I1<&$>AIM9C1,,R8RN>1/X_*GZFV;2?RO(LOY?MO!?<>KP;(_Y#G% MCT7.@S,SB$IY6*81F.T_Y#-/(/1.YQ7>#,&:65!D]C4R,>6 J[1PJ,%<+NG0?OEK)3!KO'B=TR9NW[9@M%,U)C[D!G O !107% M.4;;)Q107(67^5N2Y8ZV5;+:D27]T_UZI^:)/-P5LPTC8=?/[]R\]L M@3#9-.."NHX6:8=F1J&NYTYS&8.\<8VVABD/VQ9BR1/4;XZOWS,T+Y);/!<^ M/=?!D$8Q."\R=AAEU7*K9FG+@_Q5(7 _Z]R(GTM3M#:;N[DM*'"/RM?AWRX: M^2-\.GWM<<5O/RWQ6H.7^AY&.9!LY//-E_!?A%[PH+EDE34882@<'JA3OC+6 MU'!@*#9J<27=$TM'S,ZG9B1RM0A MC2T[5Q!JJ@*1#O4*5[!L8O*0CFP)5S!4AS@;&Y:N1(%;+C.PJ\$5O-1+"N01 MNK#G(L[DM'%.N"*H.5%.Y;>S* M3C21&3?P-V&'G!DWQ*N2^HY]5Z0*,!NILX"V6%+=&WO<3NN>IG_-B-X5M M31C[3[6[F/M/A UA$#4P-$PX<0=BXMI@$[<)T0?R3!O3C90 OO;-"/%26H& M]+>_QH66IG5HVG/YPH0M^!4*LX)N[Z,G.'S$27FA>/>'. CSX_9, M>:7\UC'EM[$?PPPWO:S;,Q7&?*)&^/ .U'X=J%%4)&2!(XG_M+Y)G^[3GE<6 MR-=J9'5[Q^Q).F8OR.H1IZ4@KE["6["%Q?Z5X7C[&M[M=HUM%%QIC/3NM49# M3%\BBI_*=UBK6*: (U&S,=!JJ;SA@8S="^PS]GGICH9TL<3#39HQ?9:+V'N< M?9/L:$@7L]=GF>#_@\O]\\W^G_^%V?ZCT7)SRU]JEMV"UNILAZ^;=%WD64G, MF?2F&:"'=0Y^TN;@IX%Q\$&;@P]#X.#+D1+U?JG++]$W&3J,=I[ID0^ M/(=KZ13)&_LHG(_"M8G"]6VY^)#=Z83L-+43THG(=@4\D*)*FBCGKB#D(\(^ M(MQ/1%CFM'0%#,!-Z ;&I2OH='!TJ:Q85\+JW4)5:RZ[:X()5V5$.(I<&5K^4NJP\QO^E0AD;()R+=M!YJ)TB8:UI^$&6Q!?548 MR[F#2 L-$19F4I5^">@V,8_S$D1;AT 6/.-\&43;TAA9$.,L7"PHWYL\O9[, M=_V:9B=U_V%C"4E]D>YSD%R^Q#DIV+(@?-]+/B]HT\'G+YG<3#,T091DZS"2 M$"%OV0$I5VG\>X:HF(+:!AU\^#K9L+/ZCI)'-$GCFS3"-"IP/F.[GNU7,3TZ M_3IYNB)F,H3B,/D2TF\H%Q,F;]D!*;R*Q$.$41H):K\J6G5 PA2MN'6RH'R( MC.%_B;/J 2@B64+P7EV0R-\F_U(D.:ZF00*5HFD'Q&R?+-J(::AOT M6P7E-?>E)+?)_\AH?I3[P7XZ**?LAW]65=QVE-7HI_)&O=/'R\=-YZ\(J-7K M06U[IW:[V:9T)Z+J\90U,T4CUP^VG\^$B"K;&LU/NOJ+*:";P_.$YYNM+EAG M5^EULLK'CB!I7ANLDU$^MM<;J]CBS?1*?^TE\RF.<:)V@+L AT1*)EH(V=C T50_2[)!W M!25Q7!9B>HP]>4&]<53>X;%'$H$(Z#HWQ[XP8-M#;4F.'0?(0:OI]G)AQ^A M(G%,CCV_"0Q%0\?VV).?P/BH_+1@(#Z.' C]N"<8FE]&#DU'I>!^'3D,&N&G ML9\T\-Q)'3?KV%42??M.)_CKRIK11 >2UC%V;:4A-/(,J;&K* U!4>7?C%UA M:0@+))%M[ I+8_DK3@$:N_+2$!)09I8K4M??@1GF'9@!WUMH'9(2)8WO:P &%6L:A.&A'_OGRHVK5*JZO[>.U7W8;H0)>*] M^YL9:H0(U?S5:+[0ZYUZP=;V&R+5#2W2^^9-T$N<1:1(R_O==XA&; N#N($/ M,QQ>WPO5LR:\2H8QF[>V)#3GGU>M0W%#GQ?H\P+;Y 6"SGF?Z7<:F7[O]02B M.+#'SC4L_42@/XT]P".=HU@7"4HRBE)<<1S.B4%>23M.BD(](39Z'Q)\*3U M:)D27E195G(&V*4#XK89XS"RE(W[C.LTWVR@:$_;O=QC)('77B0)CLNOE\>' M(,@A;VB!3F&Y 553HS[2"T+7A!V]Z"M)'ZKYEE[05[8W_/87.]8B7*E$:3Q9 M,<4<_[O\44"_I(>MY^T.CP+O,C!P6C!5:*L3L=5RCM@&1%6[6?B"LJN7G(9, M_\-I2#?E$F+345[J)@DC;;$K^BL H<F[%<1RLH7M+8&]5]:W J#^U 2V/IU:'I9F:PN[]'6TVC9V8G6[2LR[ MU2(I>@/JXR.D/D+:)D+:0C?V<=/3B)LJ3 ^BH_:/'0\]V4Q 1Y!SF-1&F2$& M[-CC++#=HJ4YCAV2!B%)M;KC'"@J*0+T93H7F8/AHN-1=2Y&!X((Z-T=^_K1 MD[] 7]_803&9%S.633/ O)@G1!_),)]!ZL 9U-^)/6#<#/JA>Q!2PW_53"?8 MT8,(>PW0;*B/F*FB OUEX@QX:X)C#@/)O<$Q^PV>8WYN!6'U&%VGN3> #]C. MO0&3Z'-O?.Z-S[UIEWL#V&QM]E0I.CUBY9O(D3UCW^:SF"!Y:U8C#[[ M2*R/Q/I(;->16(BD])%8]R.Q/O+H@TL^N.2#2\.#J.O@TEAN?$$%L%0W=T[: M^%O70XPNY4/U3M?;U@/QNJ8H?_VP7)&&\SE.,'?X'S\KUZ4GMN%';7MG6Y'= MPF-;7IVEF\H(W?YPL#^WO_CG[P]O;,[W?^C16^M]QTW=D U751O79*N%W.,5 MO*V:\1F1!0W72QR%B? .GK)M_]3NL#ZF07"W4=G6]/6EW^57?FI:G,XU'^_N M].[.'MV=3:6O=X&Z[P*%G15$ZP@<.R:PRQ? $W;LS@CP A%I_V-W18 !4*HR M8U\*WB\U"K_4$(MUC>Z]$($JE9!TD> GIC9MP\:/FV!Q)!,"AE?8K>^JT2=M M>ZY:$.W]5MYOU=V::N.U:K&(O<_*^ZQZI_".\GS[?'.7A&D^26/^QMV:X_<5 MB2^4]T)Y+Y3W0HW&"S78["@=%=B@ MURG:U]A@^M%CR(B+4) M$=>3HH*6O#.Z,8EY^*Z(,6L'=S"U&=V$+ZD]??Z" M:C?.FO;7_J+R#,[NP@V72A?5[ GL)'EC*W3?HPCA)TX-$P@PZF5=3// 9&O, M1-P<91G;EF%RC5"FY +0R08?#V'"Z""K%2[I K$A[V.:BV)5)%RF'9?58/]. M4$U]#>'!)&:XD^%M%3$_HG^:+Q%ED\:X6*(TPT_H4.>%;:GI7)QNU7 4LYS& M[, J-]9=B..;]")7:]B!.ZF(,)(M-$! M/8QS0-*'G$3?I%,@:&:8UO?I#OOU+1=?D*Z67@B0DJ:4!)J]#;\/4SDY]@7D M*J$L#JFI.]BE?P_MGTT_AA.D",_MUOW:O7K8960JZ=;H:YNF)336A&_&BKVMBE,;RY(;9K.0I](5EGVFS%P14*SN8);^P]82$7QH84G_/J* Z2ZE,L !1#3C:EF^ M41->V\T^-W(A^+[A8"A6&$'J#F;I)^F"O[5[B1X5WD!)2VL4*U4Q>6.C='\) MHR4S$.GFV#DEDX;J#G;>."NE-%#'AW4: A_*I03N9Y&;>_Y*]'3^>U:I*R!. MWO2Q]8(>=VYN=2SE3,C:FJ<:?&@I6ENE' :ZM(/AY-"M2:=TDTA:FJ9X'>)X M6S2:R?2C92Q?-QH]AY&@JU"!P/V&P8WLC)9WLJ23=ITX;8>+>\06 XYR%-?[ MFI422W\ P_SE(5/OXJN0INPLSE[%.^53,:"<)4E+LQ139IT4=%," M6<6Z9&J>J#DP_6/DR?,00>1OFKA_TT0QP9UFCX\V@1ZJB#BW&-[S^:ZLIM0G M[0H@9 MS8=D&R'6VV45IX[!;A=C36@"C-;'43Q,VP@OK>@^&+!?'#P0ZA,XP9#\ZB D M^OFN8+A^,Y@VT_DS8(8.D M4W;$,;-5#Z@FUX!=,5L;+2E("1A7C%@]@)2I2ZX8JYIG/>3>07\FJ@5;0E-% M5%XF=,84[41)M&"/#ADER!U#.#1.Z= =UL2!(^B4KMVHE@@<*Z=4;JTJ'W", MM)7N(6,$O<8'AT=;Q1Z3/M!<$7!*L097R'+%(0+SO$+O>+CB>07P^SKE3W[Q MUA7/JQXL\K)MKOA:]3 !U01U1[;H0*-[V],5;ZOF FI3)K<']ZO-!#8]Y,#W MYOKSN5I0"/4P4M]"[<_?.GAP=$N)': R^^C$_M=90.;LIP.= :H(W3^]$.PH MUGQYHLDGC#\_T9S(!F]0]%0X7?INH7;_(11+EW,$Z6.8BW\56640;J/ ,\+. M5>ZEXHN)*2K7A#XLF:@Y#YFLXE/ \"_7LI#'QB-:J_!_('E&!'-44OSXEN)[ MOM,RML4>$'W"$;HKWWZY1Q%9I.4HLIONICYKJ^:U="L(VYFMW5L*2@XM2=D\ MU+Z@ VIK]LE7E!]480&UM6W,5R93Z.]W_"H%TZORG.+'(N?QWAFY"U7ER]J/ M:K5"D'1CR!N;K97"A4\V+7*F:J1<<@M(?MJW27:DM.HDJO8<);O(@T^P^' MNUVZ9=GHKJ#1DNEU/$N^$:_JT8;#^>'F2-EL\AS2F%D!A!*G :/* ML0;#M434%%3XH$0'(PX:@0:B"S;68+CN0'"IQQE-L4Y+!ET+BNV8=#51.*FU MKVSO=*U+W>B=N\4N%3S6H:!V #@'BI3E^M2^[LW.G!\ #$UYX3U ,L8KRL_2Q[2W'2&$B@] M6Q5?ZF^-#!T9I:7FW#DNQ4,2]7;NS)8"T6F8W+GC6PJ=V;0?:; M_P-02P,$% @ ]X&I6!-:M?EOA@$ 7@87 !0 !I;G1T,C R-# S,S%? M,3!Q+FAT;>Q]6W?:R+;N^_X5=5AK[4[&@ 2)NY/V&<3&:>^VC1>0[MWGI4J)(' H.04$F:/9(.H$M=YC>O-6O6Y__[,M/1,[%LS31^ M_DGZ4/T)$4,Q5FCC._^/CQQX\? M'W[4/IC6TT>IT^E\?&'WE-R;+BPRV;CQ96SI_%:Y6FU^I%?]&]D%55O=NWF? M>]&_U<":8F_>:1/EPY/Y_)%?HL_(]>![M9U=J'W4#-O!AD)6]]MJV,CHO=+' M_[V_&RI3,L/^S=J+4Z%-;SS@=T4S=,T@__MENOWW1/*K@::#!_-OO;D:J4J5R39?\G"KCC+.5E/X@3;8_X6_PI[ MJ.;?;EO.KOM7ES8>6#@6>=HYZ9V/]/IZ/+ONDVJ!,05Z;IGZCI[S*^S)5J4J M!:;7=N96.%[8E0VXO"+$)EK8Y3&V5VC1;+,N2ZU]^'+OV("Y$PKSA@MS9XU$ M[6TD5K;QZTP7ADHLU9R1C:<'UU]O--K])_N#8LX"A#J,3"^A_/Y&7U2BA4\[ MO; QZ\18S.2P29&K'\F+0PQ;&^NDPFXC%@>U79$_5%=4,)Q-IJ _$-MA ^7- M5&MK+"@+RZ*";1G>,?_J1N]L3=F!'DW9',:+,@V_DUW9N-7: 4C+VF DQ5P8 MCK6KL^[%S2XHZHX>*.K&C91=GC">A_(1N[ Y Y83ROH;-ZF.M24E-A!%+W]D MESUQ)%5DJ73Y7^CSE&#U$OT70I\=S='))2.F3[0_I>I?'Z@Z^?S1O<9O^S^5 M"OI*# 8$HJ+Q$HUX>D"[EUT:BA[CVJ5-PWS(B# M$>MCA?RUT)Y_+EV9%#"&4QG1_I60XG[[N>10['WDVNSCY>>/?D<_CTUUB6QG MJ5,.F]![*[;V-[E 4G7N?$+\APF>:?KR OWW7PO3^3329L1&#^0'&I@S;+@_ M?D)SK#+M>H&JFH&J'R3-^(0H_FS3ND!XX9B?2I>?5>W9;TG5[+F.Z4L-TR#L MFO9RP;I$+/>CIJK$H!J:?J9W/#!.T11W+"_.@*EA]4\V(6SJJY+WL<:EI(&9 ML*!,>=$SZ$0OK^CH+:S?TEE]^94L2TBCH H(EDKX;9=5*@ZJM:;:!7=O5JZZ[+VX=1;SA"5_W!8\R]ZLZ(H=*_SHV.GTK(5;@_ MEZB&OIAH+T2E,-!MKY_:RW.ET^BT2I?\QYA[ MF%0@+<;.9*%W%2ZI[0%1B/:,J2;SZ%5"K-OTZ=HF>JB:JZBF4U&)HLTPM:6] M#U2R5FJER[K<]$?C]_Z-X<@APZFY6!!@.*WZ,<-I5AN1J7-ESF::PQ!C=PV5 M27TJ@*F^UX@=[#RUO"X,3:?2Q5H0*OOW]R;RY";2F^:AJ="2U6X?.;V9& MU#Z(1@>,A=]B=Q?.U+2H#:)&'4.C3%4W^WOD0#H'D4;\@32K\5+DUK87D0;! MY.&Q?0^3/R?TO;]PF!?'3-,S#2!,G)^ HK-.?BW>OI]_\D_6%TR+F88@HK5Y MLK(0:S@G:(K 0.*2KG(UHG@]04\(-(S6"5KBU3 B2RD^!$DN-YK-^< POSR]81+\I]?%K9F$-ON*G\M-%MC#W=?-+O2U2?877ZX)[,QL;8' M?(:0_Y^%<846*Q\6:$BP\>4';H6/J3^[Q?TSK:F$[)FTW,@V.4PKM>B.D M_[5U_VN"][]UV/P?#*T_.7A\V"RPSG#$[_R=(C MV5MC2 > YZ9UT"2\->3CXCQM^->>A]S+7K)WS MT#I\'KIS2]-1K007EX8S=UGRS"-:)O4H80UYV(T1=L? ^?AG(-:*D1E[-S,@^!UL< ^F0S8G@OL6FWVXMO /=T5X:R[V^7,[TP?" MK*5.?<]R8-B,\&5[HMZ9V(A(]GV64? 5$0WEHZS%5E62C_4'0[K=F\UU*]-V["L\UZC9 MS7[MSM@B<>Q![&/D7?<'MM059% OVP/F__N-V,P1<(.BA?2D9^P""#,R&6Y M7:XU=T>KH_/U@.*//NEXZVB^J\OR!?N36T/5GC65NLD;+&&?FQ'D?:H_%N,N M^J2P_+TY4XE46VL6H?:"=?[YV2LE7]ENH13:A1@E/,+*T\8(K M*'JGQPS6/7:4*1UA\/H&K39()6UY=-%E>DO:CG,=/^KN;$R]=#TX\'U6SALS M<:W9BD78K]A:!F_:,F:.,^=J[/9C&81UKG[ECP5Z-K)GAA'6JD^YL[>I7LWILO_CW8+(_SR(BAD)L M^IWM3[JP^6X/GDJU1;B=\H\/V M2_EWVUQ8[E>^H^["FP\^FEWS<>G=2WABOO]-8Y:&-M&(A7A/2>CVN:O;7S\WS=WG^%?\W_SEX1.M>^]=^@(Q%@@MTM7\[E MNE.K%WE7CITSRCG=^5S7%":;7\U=8+_'A>:0V4'SMWHWTWW;;_0VZ%W0:Y&) M(0C:-XD1!/"1Q'@U1M_1%FJ,-7\WRVF "R8#^JUP!VDE&-BM#^[60].*B)]7 MS[,?KXEASC0C[+6'"HF-5WS<[/U;\-T5*4R?RAMRNW:XW*Z=)+=WP?Y/G@3* MC,3>7PNV\8UZOZ;!]VTP@SN0&.=9VPE/H#_Z_#&TB=4\KGIR3OZ-2*RNJO)4(JP_8DV]-;R0=2X( MMW=L>2(B]7PQ\UA[V#+8EO9<4"]\4'DB6U=1%K.%SA+J^\Z46.RR1:9LOI[) MK:%0HRX7E#QXG'DB;DAJ@8D/%F*AR V6Y;D6$3,$"K!(,TUT#>RYY%/< M8]Z& W99&BGN*1 1[*M,D@WLI'.EN*= 7+!W1":>6!&XT\:XVIS*2UCXK]_< M&SJG'_WG#]O^W/LVV+G]F5X[Z&5AJ8>\$GS@X\%%X05EFQW]+_&S*2^V1Y&8 M4^!-YR%.P=:ML606 B%C3)E8TR:&6'RC(DG!C\/%V-94#5,)CEF!+R['74(Y M5#G?8^L[<=AI'>PD/W:+O57X4E3Z[1R83\'#AI>DV\X(<*#;'KPUR81O'_5^ M82.W])U.%,:TX>6JTM<5 M[7U_,C ID6QZL6NH?.;ZDP?RXP_3$C148UO.1=AP/,(>-JC$UH83R4T$ZIV% M>JE>QZ0CFTOZNN=##0@.G^%/=7F@@>B8K+X#F[O MB.D,1)]WSVN^G(FSHG5U\,V2UY_=OA]P>S)N#YIA0' \\A80G+3D!00?A&!6 M'WQRC!RVL$J860B W6COR'D,ANH:.RA([;$1:,3.1/#1 M]9#".Y]."+E^WL#%J0=ZBD;0]*/)Z0>C=B6( 4TSGO^U8DZL\_#YE!#GSCOE MR3U C"_O+RR+#L8_Z%/S5=&?-UBS?L/Z@GQ9KC[^0BG"#K5* M8["4#Z+1NCM[B!5K9W91.Z0G>\@N9"QQ9PU%8#-@,V"SQ$J5OFEJ*LJ"'8VM M"([E_5;)YB"R(0"/I,PI$D\J G'/*I8D0%HHTF1 6LQ(DP%I^ZPX0-K93"TA MD79-GWNFIBW+L?6>:#DV M?Q*A.UA#@H%0<,LH^R#,I*%T9A *;C1E'X29LJ%6(5B(#0D6M3N2,CDVCC+H M1R5K#647:8);0!E$6K(F3W:1)KB9DT&D)6O7)(0TB T5@V@Y-G^R[Q%ETAJ" MV%"^0)A)0PEB0_D"829MJ,# _0RQ96!_%GU,,YYH%UE^/R6SQ;/,7N62B0JJ MO:/S-W ?.$;AZ;IK%P*0. T2I[^#00,0I V",QX"!C5PA*:7KV^!7L+KT6/X MRWC6Z/#8#UA?%0L07EP>1+K]0\L5UP$5<\"+CY:IT-_R1;^=@\H3_P'EQ.6Y MG%?/$KF:5?+.PS'$?:20IZ]1UR61590L,,!OD7*UT@B3U#(V>#*I>C+"D#6/7'H. M3T8 H(GDRMJ@B=S1D]& (*#)R,L&<&32<>323ZWSQV@IUG\U6SUFTTL,2G' M2D6_[O-JL3K0\SA)DGXNWJYJPD"_H^F72N7@(_BO3V8L2_W)PHY)?Z)M:K9C M:>,%_9I!HKX]G,)R*E ZESS]:)GJ0G'ZUI!8SYKBGETWFA)KQE*H;)9$[-TB MJ'G$J!PV"(_.^X92#%X&"A>9A[W,K"Q3=F,(P+- T=SPZ)#,-/HPNV!:WAUT M&IDHR[1(/GA9FH'UQ^?XW.O_F[0P_"7OLQAM$?CV G,R4#-/O'FC+UTW M8DRZAGIK*)JE+#1GQ \\SZ9(/F1(!>9?H'C1>%STXPO?H&XQSZ($2N::)_W/ MALH/U*99#=I(@+RGS97E+_7[;L9:O(QSWV/HN M>B+<_O&$Q3>"HRH&7P/-ST+S+/&Y]T7#>FX('CXDX'"@=L%XN[MPS)G)"I7F M@,[;@P%^!@H7@(?OM D9*AHQ%-%W*QQ$X]?# 3X&*A>$EZ_)A$XGZ1++M.=8 MR8/,#A\2\#10NV"\[5T0?(/^@0&3X%" EX&Z.>==O@9PO] =S0TAY,$$VS$F MX&:@=_[X^\JDGH;AN,D&=B+,B#'R,,>VRT MG).-$A^O[O&>#=ED-R(OV%X?"40_*J8U-^FC1!4;86_-WWH[>NA$[@39*1WP M*?&Z!-0.DD3OQ=Z]AF]3M1@R%7@,>"R'/":4'AM@X\EEC7O-T&:+F9B09K1< M=;5TR4D;[&\.!>)^8N&7;!$KV-]\$6NC+.K.\[VW$C?_O"/8)E3D47FG. NV M'=F:\3M_QQ:9F@N;9XI-)II"AN*'\MXXU/O0K-6#V]LU>UZ#>^6] 8.=!6K?&5[:!WQ \BOT&& X= M7D*PJ,6F60ZC9LCA3+=&;V&9GGMIP'&+U)^XE#UC79.RLG7+7 MTW'N,!55NMAH>CW =8 C;*2GH^?U5'G0V9RP'%LD *H\@"KYLRT )SG#2?*5 M@T^!##9L2DY=]+4!@3"S.6.@L0!6@L-*;)T%2!$2*0F=07P@4G(/@RRS,1#G MG)PC5:1J16J$R%3&7U31#.*/=H.@]Z,OV/#S1^Y,XXE. MRXR]>Y5TPD)+#Z8C>$1\IWCH\@ -# 0P%X?#/K0JY4NU4Y&H8Z+OTDTK4.Q,; M /K52NW.20'0'V4X>,"+.SX". 82$L0Q8#1]J_>L&<00*8!(@4A> MGEB[#8$Y@#D$8HY4M@DFO4 B*L"+A++D5B0\%RYI(J?E5Z[C@W([^!'B@_G@ M);%=S-?Q0;E]<'QP?6LLR@% #Z!/9?5\C>,8Y+AF89NZIK("/CW6$XW8H>411$,>*X^RJ_-G./9-(,J$ MR:+-GWSLWF@O1+VE[5G$=@;TQ>RV_)/W="EV]'06%FK#J6FQ#.?9;]C2\%@G M +=3X7;@E&8+.J7R_Y>7LM&?"[A 3+#[]@F/P38'] M(Q&>1CO/$@5RY6,%+X2VW1_84E?^QH"P,[H4*@/YK'ARG]5YG)&A0YMV-:"" M5X6TKDS;Z4]X+4RQ ; QT.!*7,B(3Y?N>Z8L4,5S>^YR"+F016. 7!$@)U3% MUE,A-R2ZKAE/74-UR[;3S[V7.3MD!1!X) +?FDJ0@0#(8@ R5Q*2/D&PI4SI M-%Z39Z*;7D\H=/DGTFR M.5DYU *Q8HM^)7-6/,!PKC6+*(YI 0/$147WX! 13)(/7B$ 8(%UMH.IUP.>:5:J;8]7N$? M#^25C?2[K5N\6;XU1E.+D#\(#F48[S.?^+[Q2*R)R8[@8B?PL9>!5-^?*'CH MG,?,-+SMPTB7&+-XD#V$63Q(Q\4L$N,]J1K\N,DL@;D8L]DY1M&X%^W^9#0E M0V)HIG6/#?P4V*"4$69PSUT[9":2TR)O3V9B\/20<0@\MVY-W#4'> (\!0XR M) O/U^8Z;^01+_EFE_7QC=Y]?:I+-4OM&H;V3-^,K65_\I7>Q&<+$'\^Q)]@ MJ<1#YAR:_<+Q8JYNO5T@VSE^,1OD$688EA.R13PDXYR);]:63O< M%\J2C0:L!ZPG.NNENCF6_FD'/@IPW-:VZ\BZ=7"F8#6.LXEVS V8M 44+S'$ M/E("L+P&L P !@"?Y),=!& Y=@G<6$O@1KP ?K2(S='3G_2,9\TR#38]6!\1 M96J8NOFD96SON BX/7Q2DY2WC=T)@M1J7D@1(.W9AZBH 7$AG9.Y']:S$5-MV;P8\*. M;:C?Q8H]TR<9N590 41BZM[['PG"7*&KX.-G&J!0 XJ)N/,D0L=E!Y[GGG1 M$M@3V#-[[)G2/K3P'!XHQGT !0-[G[82/>(ZY1:(<@I18CYZF#)HLR+7-HOI M;90=?EQ8RI0*DDR>9?O&2!*BD3>I,=!(#3).X".0*WY#LI;FCFD@J) R\J"C MOX%\ FW3WF69?(&Q 7$TB^\)VJ#R:$KJ5>E7\>D:WG^/PJ]&D4-^ M/8JFW=G8(KJ>?;*^&D@.*1M2.1:X-:Z>8VD) M",T%0O,K0S.3V"T\-E/*Z5&9:514!7@84.D#?!L60]\!Z837 M8\=S'=7KWP3V,?;0T)>,@1$4G0^!F,)R9KB%"9(T==L12'!&J_! +@ Y)B!? M %&$\I]"?=ZN;1-!HTW'K/P$AI%=D^[S1^WEPB*VN; 48E,BL^]3@E7>>U5[ MOD3_A=!G]H'^B]!__T-J5C_QWS:O?IXCVUGJE%(3^NK*!,\T?7DQHE-KHP?R M PW,&38^\6NV]C>YD*ISQ_WZC"V-XN_"8+OK]4^L6Q6L:T_&A4+GB5B?9MAZ MTHP+]D#I\MO#[:AWC8:C[J@W_#RV/EZB8>_JV^!V=-L;HN[#->K][]4OW8>O M/735O[^_'0YO^P_N?;]C>ZH93XYIE-'UAZL/2*XVZIW/'^=T%.'=1__]U\)T M/FV-POWQ$UH/!O'1H(WA(&\\R.L^XK<$1H>\X94NW4GU.C*U_)Z$W(NF1'N: MTI=+\Y=/2#%UT[I _ZCR_SZA,5:^/UE4T:J5[4L_--697B"Y\2]ZFVE1\K(. M&F3=O=K<07CAF*6/0DW'F6#U>7QYTQ_'A8SRB\*,C"3/2K1+JY- M9<%XF&W(+B&/?09DLE,(EERU]?)J[/<>*__WX MOKGCEZK5?WE=JNADXERP ?L_6'QF^2^TJ\[85*F*<*@<=E2_P6=B.]O MW<&H-[C[ PUZC_W!"#U^&PR_=1]&:-1GNFI$%1*2:J@_0%+CG?H>]6_0Z)=> M4(VM5%CW:L0N2YU:?24JW)%^I,"@VMI#R4>.8*'$R)D$]XUI(6=*T%\^_I!K MZ2!J !'U;7G^R._NN=;2!FHO5/I+94:[-&6/552\K"P)MBK$.!*^]//E9RH^ MC W!JA*%K950N_,"48E)^ZXQ<5BZI!)*F:*:5$;L99\_LBGYCJ/Y[D=+\X9K;&L#&$\T(A#?A=F;.99K,@#+K1J!:A0HF%9HZ@UD[9 MVN/!%O96]Z41A";5WU*EUI2DUFNAZ1*(!QC\_Q^C[#5CU!N.D)\Y06]8T7SL MO?9=[P4K#F)[?Y$Y00/RI-F,3:F[9*/AG"@LV*4BS4":8Z.K*3>$WH-U$(]U M@)C.\]W71G6/?9!(5"(^#K@UE#7(>(#SREV3N3)5\MK0L-D=<\M\9N\YVN1E M7".7+J^)CG]@B^QBFY4N/M.$ON/CIK8S,JFRL]!_%I9FJYK"]1WE+2TX1_PV MZPD;VM_\^_M#+*3 M6]HS*:/A0J-?Y&HU-)@:004?-IHK^K%OCN1RF0JIQ(1VV0 M2MY'-]C>[9P%AI"N17#$<;33) MZR+;6+RB.R-N#RM3=*5CVT[+X-DI1CRH+B5YS+M[O!AI5%T'GJ*9%WPLHSFV MT#/6%P3]L_JA*K%0$K*GH8[ D2:U+#2Y+K2/_PQ[+VR#+O\7VQ$=9=.7UI)Q!/::($=RZ$P/V2\1,J4*-^9)? = M_9@2'DI@ZMM:A^;>2>_1%-MHHNE4\6-=IQ?9B@ZS!_Y::,P:H$; F'@WT'>N M#((:"SRX2QJ>61"P)E:(I*8"N\R6-)!*KU*QPVZ=6T0A7 A),N*+ES9Z1]]' M88#L!06P/359?-"/[CM3[&SW_0?>["7KHONP-X;W980-%;V3W3&.*9CH]?%_ MZ C8_?Q6^A#KA?<>GCS'.\$[R7RZ3A6I>&E_\(SP_;[%U<*RZ"O<53$FPZBK ML[ C(+A6NOR#V*\ [*46A ;D'TP_).^NFP5:*3M-,Z&X@8U@9H7=L M *U/\*#8PTNGS!&&%.@&L1 (E):.=Q5@_]%>6SE5Y?<$=&T8V[1/][HD0!C#% MG%$%NF32CKZ2B@C6WR?T9)D_G*E_]0,5?H3W3R43S> KD]SC+^WJ7PF57OU8 MUPR7RZBI7)%]X1R4R!_.B!/7>XO@LNUS$1<.^>"*<5!>'663YV.&#E@%MJ[HS#V9UC+$-N8W\3E5O)LBF9"W3O\E%E%+)V%W=O5Q$2B"^A,&] MS\WE#F^1PU_T*"-SX7 0,C1BVZ>MHILVCRV//=W)PLKW>(F\5/^+S=Q/=Z9O M> 2$WO@J),:[P'O #^"U^^M&J=]'!2#A'N"".LVF[P:,_E5 M[9E.,K;IV!Z_?OEUY?T>Z[26V+[6S;?=C :EC06$K7UQ@29*JUVQ_N/3284* M3_?W[0O,84>/7Q^^W9>"6VSYG>LMMOZG]8?U-KW'[M=>YWFBW,0O^/C[YJ'U\?&_>ULS\/_4&7[9A89Q?LZDB\/'G6X8ZZ M7^YZ;*/'5?]AU'L8#5,8K8!)%2Y[N88I_XQ8?H7["3'#F3(Y6\O\N227#C&B MV__:-'T#;SK$<1)X\?<1/Y%7Z[KK(;HV_FH*_7>^%I?6T_B=7*U3M5YKT_\U M&N]],AP\3>UXIVE[4AZ[@Q&Z_1 VRH-[V$JVBS>W#]V'J]ON':*&2G]PORF_ MHB%O0X!S)@F#\G%T;C0XB4^AL4W02-)P2XMB>I[NY M?1V]^V;@A:K1V]_S)=9KHKAEE[P[:@#CQ(FV(@':(-]:I#"Z>2JDV#^AWE\+S5F^24YWO(G3M Y,&HU)L3U%-[KY0P3&; !CO@KXFPY] MWC$W:1ANBL=+C&:&.4HT$SP&>";OA,I9<$+OL8&?..!_LM&U9BL+MU('$TE= M ^M+6^-R;_,Y[237O!%I>[8W/A,.7_G3AHH-G?DV*46G1'&1@EDXQ2SP*C M4-7A6*9N\1)[R:L_^J4W2'JYJQ8]%@.0SQ3D M,[74=4>>J.? )3[?@)BXF67NK'8'J!\PG^.;F4'N* C@%.*5(<:1K,L$\F/IMSO8?$$,SK0"' #< M-Q0H6'2O&83JBPFA:B(01 4N "Z(APL:6>""/M]\>&NX6[EX"?F$\ ]K:P7# M?S,+^.^]3+4Q._L@6[@_]ZZ;,X,XRO 2A509 Y]J2%NNVV.WW';TQ%NW> OKJTJO-L2BXI9+/K+^KP*][6]H_QZS./NTW0-O82;0 WZF M\?UAVU;/N5O8+Y)_U7\8]N]NK[OL .8OW3O:[1X:_M+K>1UVJ\3?&LB9F@L; M&RK%!7E1R-QQ"R?PZ-VJ$C12L8/?!V74&R=,NV ]>GNMQR(3.CCV:+CP>X7; M#=@?42*&3[)FL+-$&.A?/FV4OUOWY1>"O3H-X=IF;#J..8NS5$U M<7WTF#] MFS.\/\2D"%,Y<;7_6B>>LTY3V,BVBMV-UV>%;AUK",3.(;^?.3.]5N340 M81E'M:<[*RYY^$'NB&]RX Y=M8S8G_?B@=\]"SEAT"//D@C.#F D2QBIB8 1 MD)9YX02Q(![82Y\O6^],[T\2.^<=TW;YVZ3%24BD*S2\G82\]3SUUKY3@Q*O MD]L=#GF< [@.W@_O%T@";:] )3+PM*2.=^0-HE8D<>P+$#_P?GB_4.+G# 90 M2N)G];?CBB)6M(2MX"CL SO=ZQGKFS4P F/W5U<2J[:?:%-A?N _=[4KAR8# M)-J7[=+@K!BW(DER36YT6JWPLMUN5?=5,?!OP^N25U)\85>>,)Y?, IW#97] MTUN3M^M<8\MY<=.3B;^$2/L<$N%4*R- M=5)&!N'GL++3-7[P8IC\X!*+J)J#=)/:[7PKTS\WBE"S0SDJVDMEJJDJ,2Y\ M-FA+%'1RTRM S97M8<_)]+E6W7NN3+MGSPD_-E-?YE [O]64:,*M$U4A=SV\ M#59P>R#.ZA34:'I8+K<;'1%E&J S%72VJU%5;P+HE-IEJ=40$9VB:-S"N)NW MQC/%D6GQ/8V@PE(6$K6H*LPGXY+*AHA"H2:!ZPAH#**Q'E5EQ8!&N5JNMH4T MH$11485Q"A\M,L>:BLC+G!BV5YW"Y'LQE8UUFQPJL(,SQ 23+ ?W>Z\ :D15 MAQYD>BYBNH;*M^YV.4I.,YUKY7:SG8I8"DN'*XKF+#8;-*/JX>380"[+C7IF MV$ 4E5T KU)JNX%/XT)\:U6 M=FQ/491N?OUD[AN;IXB>6KG#CLG*B'\/Z,\#^L,RC@Y2O F@OUE-)_THR]&M KB5WI(2QQ:: MAP:\5O,%CIVB$JA,KYW>P51 M6#;7H=O4?(ABB*P&"XRUJX+LTMU1&O ] M\$F.^"0LN^C0#7.I\0D/(#=D033[?CX11=,7QX5]($YQ'-CJD8[EF.;*<7P>N/A"G]Z+H"Q;/.%56M,MM,9,? *7IH#1R5X1+ZEL,KU&D0#B^J!#8CM6)K"\D<5 M-K\3.L,.X8D"B9)%A7WTA)*X M8,]=QZI4RPSP1=&U^?4GP\LYYU?QOLG;-W8YN>T/4?;A&PU'_ZM=?^G?7O<'P M)]3[][?;T1]0WAW>#^\72B;E.N[NG5N"= V/-5US-&+#$1/P?GB_6#(HOW;1 M5LDT7Q[-614?ZL2;$S0BU@P]F X)G ZKF]2S==@%E8SSF/X2YJF+$Y1Y(]@2 M.97SCI*5D?N:$O6T$[4ZY:8HI9J*$EW,$$ C9W;&!- &V^ -Z2X%-;O?5GFF M7U$ Z:RD0- ZSZ&N$V[Y_PWI$3G5<[-0Q)U'U.6IYS53>2:B( %XI@//R F> MB;NF9I)-IYC[;!1!A$XSTG@555:LF4#NB# BI!8Y=V3$"!G/ GT5 M4OP!D2M$1LX:B0^15)75( X)OIE?T%)YO;TVAZJKT&7^:I'S3SA$8EO3E\M5 M.1T?#RI<%A7ZD1-;XH6^5*ZWTTG4S'*-RP)XE1LU+D$7YU\@14Z9B4T6U3KE M9B,[!71DG/BLSWI9[HA1Z#)+.CB_[C!S@7?O8N=GR+*=[LKFYO<< M*F3A1,X;LB1R7LZ.[<,G5["OEYOUNH@Q-4!H.@B-G)23%$)KY7I*NB\C:BZ_ MKB;S+M^L3P;:3EA9$CE-)U@)ZO1#6JKE=E7(=2/ 93JXC)R@$RLN6^5.7[D=-TTL"N5*YVA-SW*HH&S+5K=[VU;1 <.6&E2N0L MG+T[M4Z3'W6^,5D2LLPOX#0=G$9.F4D0IUS/U6I0ZZRHGMY*SSGX)>?Y,5F3 M%Y$S6GR:WO+M,R/\$ECK?R G["1,*A(1GQ/MA:B5OXEE;D.S M(B(L15%?N7;3W+T6^=9;A4YPJT=/2ME*-(_!4.[4Q3C+'-([BX+^Z DO<:._ MUDXG$PMR/$54O>'[+$ /YU<214^768,B8B2U64TME J:MZAXCYZ&N:HM M-^KIY(1E6=MN.;I(T;%-9_3KS?_\4:]9:Y]]MS;/@OK]A$J6@OE:FFJL2X\&5*0UKWAMW^BJ,S M-^BLO_\0HLFI$$T4H9I?%X:V.W1,Y?O4U*DRL']"Y*^%YBPO0-S!^^']0@FA M_"YA;)6.>K3\Y7B;B:8R^N=!*JI)I^20^UJER^J'JK129/P?:O-;Z!GK"_() M'?26]H&M=5A5]6JUROYN-6E/,;6X$5XX4].B\Z4>UG2S>EC33?G ^Z0#[Z-. MF6%NCB%\1)IML[+,IH7,A6,[U):F9G0.8V'".?W[O?E&Y%R*%4=R6^$WQB8Y M69\&**8#QVCE!']/">4_9Z)O@3K M(&V1W(QL';A\]+8\?BNS1!:R"#[ ,1TX1K808H.CD+LV1;$2"A.-Z'J+75BG MZEM3*YJ!%#S7'*R#SDI;2+0B[WI;4_61$O76N'))&O4@AF:YTX :70#,%3 C M;W.+$9AU"LQZN=X0PA:@,=_/:\MT2<;Y1;S%()+>[E?T\O];J!W>Z5BY.UO/D[YJHR[0'/* MVDQ'E%I-H5N%2I?O ?4Y0GWD37!QH[Z:"=2+8@04P G>V'=NA^SC !6PLFIWG_<*JS@.X>T::FRB2VITR@U9#)5=*Y+* M!J98,T4<1_3&RA2U>KDMBW%B[R%,X2KTC\[85)?L&Z8$N$3_A:@B4;5G]U.H M%OQIJX\_?5KWAW=G0]-YBL[3$6)%_UO=$,;"@:5;U#A_[ J[=\6/6530W]%R%W#*G, M%VW.K\+S^/7+KZ5M9%6K_PIC.^\7SM_\IQ)_W=;[;D:#U0N#8L&;411HQ'M^ MXP732<4R?_A7MB\I1-?1X]>';_=[VPBWG7Q&V49&R24(_:\B5?QV5S39^!S\ M.%V9LH_=K[W*ET&O^VNE>S/J#2X0UG_@I>U+*F:M&61CZ)_0E+CS*#-6\PS4 M?U3Y?V&VJW>I]#%LSG^Y#I]S1KPX9GS4O[K3C._KB5J#]Y"Y>@O@Z!7"#U0* M'C"WAYR6@/@\OM2,46\X0E?]P6-_T!W=]A\^?QS3"Q:E&[U\U7\8]N]NK[NC MWC4:CN@_][V'T1#U;U#_L><^,%P_\>[60,[47-C4<*>305X40LU[OK+%;?DY ML;QO5/3@]^<>[[MO!EZH&A5Z[P^4;VMP<'7A\?C\MEX/*CF$?FF^!% MXQO 3D:P4Q,/.Z]D+@A8: ?:@79$$12'YO4D*4P]=[=%O=WT"K0.W,-W]ZJ/ MI%=*SM-D6!#\GV^U+]C6@?;61A?56_Z3Z)\C]G=RDM]8YBSLW--;0]$73,MW M;9O0/VKTG01RI]R6=VPF2(_H9T<>@#T:V%LA8*^MP5X3"^PUJ=R1=JSYB01V MT53N=A9/HA9(>L<_V/QL>ZLXZC9"3J%(LBF>W,)V#/J:8:<_\019U(R$9KFU MZ\";,^$A0J8A,$>NF:,3@WZ/B3G:S1TI;,(SAVCJ_(P>M"#)N5\MT[;1W#(G MF@.*O1BRJU.-0;%SX#QRW$1.-"Q76SNJU0@ON8 U\LD:4@QJ/0;6:)2KC1U5 M=H5G#=&4^EE]]/RO>D [T,XYVQ%-G.3?1Z#M]N?$PNR,5T1>YL2PB7UQEB2- M(@ :VH%V1!1L^5_+V*H1-B2Z'A!Q!0A_".N\O>&5U6((6'C4[KG$CE@VOEYN M='94C1=IF500& %R._48X@FG(Y<5QBS7&SN.D1()N:(IQ?Q;^UM*L6?0"X2^ MC"I&OK?/,M6%XE T/1/=G+-MQ* PA1<[C5A2[6S"=D9U#?5Z3?S3I)!4[K33 MC6N"_LP4D,-R1H]/HTL$R-4,)(>*IDX+YV-^)0:QL,Y5*59GFJ'9#HNLL2,8 M"J-%86F1B;*PC."C5]U=.%%)UMT TVG"K%FN2EE=;01NR2>WA"6?'KT0GPBW M-,I2*UU/.C]K\P5RKS>J89JOUM? #"B(8 M+'#[6#%@MSWJ2S(Y\E'>YT4[7 MC0'-#PP29!"I&I:=>JSFCXU!I'*CEE4&$4W90R(>M /M9+8=T<1)_GV'C40\ MC1^16 W05CSY@V[)6SK0&3#?GT@9M3U_@ZLLPG,TND\&;ZW/(V_3I?5KBIE07+FWSO8 ( M!*U3A2 M-F, +8L^B9BV-A M:I)I!K:6MPZ9V=0D8AVQ3+XAU0]R1+2'6NUTRU86U$O(*A/$D1 N'A/4RK4. M[",3VP5(;Z6K@#H:@AA,V,61)+X28E[8X@LQR DE*64(] &/",0C4AQYXO'R M2*,%A=@SZ)/G/^0"[4 [10[Q%<)=>" .(EZ8KPB.PIMF18V:%:JY&.MDVZX0 M[S2YP_N^UR:*(P>=XNCD!-YF4ZQZ$K4B>PO **\9)8Y\]S@812ZW);&;TF7U0S7=H][ M^,\NJJ/LR#D3JN4,H%HTQ0IV.K0#[62V'='$22'L]-\)T\%$19A.,WXB&[:Z MC\8'1=7'QL)B-B=6?\'OM_AH6)]DY MDERNRLURK2F);^T(@C8 N'3T3KP4 5XMMZ@*:/+70GNF*LUPPB/SQ;'M MLQJZ/'K_[3&A2\_N>17!/"$Z+S7:9;D#]30$;E(PB,M';Y]-%>)2N=INEYO- MC-7*H)_'IKIT+]$O>*P3_N7S1U5[=C^%ZK2?MCKXTZ=U9WA?-O26I[8\K;79 ML?F>5K8:.:2- (05PFJ?;+8Z) 1AA6K#.3:63.<]F YMPC'1E6GP/=Z8*=(; MS<"&HF$=#1WZ SN/V_ZPOZ^QSP@E %)T;%.,/7[]\FMI&SC5ZK_"]I]XOW#V MY3]Y1L_F^VY&@]4+@USOS1D*-.(;3<$73"<5R_RQ,J>V+BE$U]'CUX=O]WO; M"+=U?#[8IGWITN,A5)$K*RC[*-WX'/PX79F@C]VOOHOET2N$'RB//&!N#SDM$?!Y?*D9H]YPA*[Z@\?^ MH#NZ[3]\_CBF%RQ*-WKYJO\P[-_=7G='O6LT'-%_[GL/HR'JW]!'[A\'O5]Z M#\/;WWJHUQT\W#Y\':+UX^]N#>1,S85-%8K]_MQC>_?-P M5HR+L?5".N(A8 MPR% ZC40N/#W>($K0 8J;_?5ZKL]Q\KJNPN_"9U-]FBX@-K/Y$[8+P1[:OT\;FB^XU54R%'Z&S^7FF_+]70+LYS/$P^; M@$WOG J4T=2B=L<]?<'41CV*894+#.Y?"]71>VPI4U23RNO^)0RVT*(P!T66 M@,L3YG(9N/PHYF&!%_'X!K"3$>S4Q,-.6M'\? M8: ?:R5D[HBW[G3&+P _< MM*BW"\6U('?I\!4.*(95Z(6Y7& 8ZE1E.ML.CJJ"=J"=S+8CFC@IQ%%5WPR+ MT'G]FZA(IPH+,97HG_EN88<@^P>>(_QD$9XW4 !K7. 4H[U':J.;/WXAZA/YBC6#_=B=4+ ,"%^^T":435F_NH8Z MPB^/V**(B68"(9O.*?W$SI(7S1""H^3%Q'\<1\F+A_^.<)ODA3Z5OA I\C>F M1>BL(F5A48@I2^18V+!UCCV$U?\L;(^!./T)DX"FQ2\XCJ6-%SPE:V3&(Q;;@HG%':N0.;<5 M"L-]>YGOZ-([662^.C7%6U6ABN?#B5N"1W2@'6@GC^V()DX*X?1L*,=BIP? MD4)RE!) VS97B+GE&T]1SR1MI.N6P$E%#)WO I 5,A@V)S\A@0X0CO"YF1??M0:_SI;H &M[9H#=J0)OFG9 M'TRC>=Y]!!$W,*/55F&4_K['-X!0E*W#HO)@?IIL%F*4Q6@2:)F?)H&6^6D2 M:)F?)EN%&&4QF@2^S$^3XO E^&:Y!!AO\O-XU>IXY]I4HL&8H.BBO?E,9L$! M7R#-F-(G@XL?9':YK[?IS1. D !H !0 "@ %(*#(OTJ@,%."K:4L@=$7459 MS!8ZYF>OK)!TCD650CD_(%RR+%Q2'^PY0-'**"C FP?F (D)$A- (3HHP$:/ M:*.KJL9R[;$.)KH(/ .R!61+7F0+KV@ 8D4$=@&Q F(E+V)E9#J"62L0)A"$ MDS*R)T(Z\]D*IW+5;&C+!](G64@KP_"GV/6%,KF@' M F#%"ZP!<;!FG'UQ$I"5>V1M%,@ > &\8O: +(+MA;4$9 &RXD46M^.GIDZ= M&?LG\>$%CG?1V>Q(QSMCW,B*F]CBLR' +Y?PZ\[,!3OP!^ '\$O#B<)S[?R1 M?L ?X,_%7V]58!@ " !, 8#OV/%2[P%^ +_T8@& /D!?.MKWKX7F9"#""2&H M_*;604$::!)H6?0F@9;Y:1)HF9\FQ2GZ!4T"7T*3XO'E*]_L3(Z8 (=^;KIK M:9W8]P7KV%!(&?T/-A;86J)5>?WR:8)%=J MTI^KHYOS,;$"9XCQ1(;M4\3<[(;^PK$= M;'B!$O?LL.K!9X?=/MR4+B6Y+->E)QKJVXF@/N3D MO&!^G?N^B ?F2;(,8 >P1P%[)S+8U\4BV)Z<6\/+T#@?\.NERT:]7&^D>PH] M8#^KV&]6(V/?WRSD9X6<5=K7Y;+4:0+HLP'ZEF"@EZ(+_'4%3U[,(^3@W_/R M@50')L@&$Z0@^=_MY0(Y,A?XVZTXC%V#_YRH1S:=0/JI=-FI2J+!_ST@7W3Q M7]L-_#.)[4ZS++>%@Z[X\>)&@X>*SQ\O%B)ZG[,F88DK/TT"+?/3)- R/TT" M+?/3I#AI!- D\"4T*1Y?BN:N%2Z]YX$XB*QVR4)*3WIK7KOW456\+52"A5K$ M(%5!T+$O.MC8C ZJ+#I8KU0E^L?[6(L]"X;*#7?QB&UPWA53G&@O1*W\32QS M.YQ8$3^2* ;6 -[-9ASP/B'O!: .4#\3U%MQ0#U*FLM!&']CB:C9A'Q&<9L4 M;4FS'8M4CR>Y!21\;F$OFH3OQ '[B-DL //D4=! 0A8 H:!\QT;%/^\@I!$1W^1],>5%-UI^,\,NC:;'. M=AW'TL8+!X]U,C(?L47;!',,&"(YAJBE'$(%YA 5J< 28= Q4 53&V*9?\0]LJ1"0AH TJ#]!T;%/^\6RZG]D0+JK M_F=A.^QM]LC<$;OC]1NY@+D*R* !HK%RLM\. MIM_:]H*=2\,"Z38_A01I!F,9@[C<]$-SI@@K+HZ]B'M7I[WG (= NJ@F0^+% M#,(/LF&W,DP1]7IA43?7E7CN^3;=-8KLR ?BT#FU'$0"4P0CN67)(H M9]N\9@.N[4.YX#C-#_ 7MTG1X!]+*8133[M)D!7*U38"8V2Q#WHM[T)_J/8VD*_Y'A&8+;HBKMQ M3 M'!_<'JS PV_KLGT&7ZU@Q:5C(]V4<=NUMOA23PR( E=T8LD2B3'2_39+''G0 M._""L$V*=L9I)Y9J% G%O6-FC,#62M$X!+;7BZ@H8LD-B#L(?C130/0CB[P@ M6O0CGE,1DH^( WL4@CU$4Q6QI \D$!X'=B@$.XBF+0Y+'P!89S->#LGAF_'R M&].:$,U96! QSX >WQ\/2;QT1CPA1J/,=@ MI!,S!R;)*9.(IC9B24 X4^04H>K&RSFF['&K(G/,= M#HB\$$O1;*)",%Q4U9QX28CC8^'\8M^%4,]'4-08>+W;Z^:2$.3&Q!\7EC+%-D&/.H9:X<(J\<0+1QP? M#_>!Q&_R8<10%+F>2KTL5:%2K+A-BL84L>1OQ!@4W\D18-4"&R3'!K'4BD@H M,'XT2[QA%3= /XC;I&B,$4L20=S!<5 2A> %T4(?\1PRD7R '-BC$.PAFJJ( M);D@@2 YL$,AV$$T;7%86@&X!5D.EA[)$ M#GY!NH;'FD[E/L(.8I56**CYJ9P,Q15^M"S";#^##8'T-!4]F07Q=8$T@]JJ M&KM$=2"9B2<:Q"!50="Q1^_)L>1*'!E1#IQ=/2#PK BK+L2SF1PQ$)\ >^^)V]=)E#(L6D4XM?7L_3\36YARK#&45=S[IK_.754>D,_9C;%HJ ML8+=0+:I:RJG0K6,V)_W&>A9LX"T$Z4?@*'LTDZ4?@"&LDL[4?H!&,HN[43I M1UXPU"H@[43I1UXP!'((,)1S.21:V*-8B7BTW2]8QX9"RN@>6\H4U20Z]*I< M+T#2W#8CU2@CJ>9BK)--3A)U]>+P_N^-YFYM1M&2W,+.LSK["\=VL,$D1>13 MR^1RH]DL3(K'9* MU8 86&N=I]RIIM,"JC3*=>D5D9U4'#%@WX> MF^K2O42_8$H+_N7S1U5[=C^%+@O\M-7KGSZM>\@[N!'Z]R+_7N!_LV-SMQ6_ M.3IOK!,>5'A@5B&Z[@UW]=V>8V7U7<K_PJ9P*B4V*@6 M4.4RR)O+P%2Z2TGKCOU"L!=N/L_J4O[290]8YU1,!@NJOEB"N-=^4+XIE&3$ M.J> >V-IM-$\[\);V&1L+L9]'E^.IA8AZ)Z^8&JC'L6YNKDR5_O\<7RY=W5. MJ.5?''W;U-;YX % * 6 D !H! < M%.LUE[267(*=%&PI90^( BE5 22=8U&E4,X/")9 6K1_PD/KS \2XZ MFT6H()\A;N2EG,5G0X!?+N'7G9D+PP'X ?S2<:+?8#H/:? M/-,,.]=)KDBRT$=52^5JLU:66X*=YR0NZI(>MW#'GKV!^K#SEDY'?:*G2*=\ M0"" /;-@KT<&NP@'/->D=[L%D@/W,8K\1&?NIGKU<8VS?PSR2VF_5RI]$4#;KBQXL;#1XJ/G^\6(CH?FM>>W>1U7QME )%FH1 M@U0%0<>>Z&"KNAD=5%ETL%:I2O2/][$6>Q8,E1ONXM&=:=N[8HH3[86HE;^) M96Z'$ROB1Q+%P!K NR7% >\3\EX Z@#U,T%=C@/J4=)<#L+X6RO[Y;8$65WB M-BG8HF:K%HM]!61\;F$OFHROQP'[B/DL //[ MCF-IXX6#QSH9F8_8HFV"408,D1Q#M%,.I0)SB(I48(Y6)ZW@*W"%J! %/[X= MR^)R3%':A!CEC0@"U"01N$G!E$@[EL7JB-%=T".BHA3T2/NPI6V0__D('Q21SH*I#HAB/AG\+;]A?4' 5 2.28YC#DL= M2"Y*G1;WO&&'UEO"E8X1%=' 1.UF6M%LT#W -MD-4\22,A!3N!LX"3@INPHH MEER#B)%PX!S@G.SJH,,2$<3D@#SX,*(%TXN5B_UV,/W6MA?L3!H62%\8S\1F M,7.;'T7"?J+_.):F\!_=\X\A<"ZDB=!)O'!!^*$U[%:&(:)>+RSJUKH2SCW+ M9K "#[^MRY9>OEK![2='GFS3J98;;2AY+6Z3HC%%+!DD4WDCEOH)D<_$B8LI M(&2215X0+&32B27)(LZC>T M70XU9,X9/&Q$7HBE:#91(1@NJFI.O+#&\;%P?K'O0JCG(RAJ#%QNE.5J57S) M)08Z@2&JL61YQ!@(W\\->5+>8N 16* :2]6+A,+?1['#6YLHF@W@"F&;%(TK M8LD:B#OV#=HA]WP@6MPBGN,ODH]X VODGC5$4Q&QY TD$.<&5L@]*PBF):3# M,@7 #\AL:!L2Q#<3Q-W8)=(X7"FL56*AWFRNFTM"D!L6?UQ8RA3;!#WJV("0 MN*!:7$J\=L3Q(7$?2/PF'T8,19$KJLAEN2.++_7$0"@PA11+"D>,8?&=' %F M+;!!"6N$V*QABQY!'$'1T')5$(7A M]A'/T1O) M1\B!/0K!'J*IBEC2"Q*(D@,[%((=1-,6A^45@%N0Y6!YL?+ #PZ64P%N$18I M]X[KQ(YF3Y;(P2](U_!8TZG<1]A!K-@*!34KLP)'>HJEZ.%(3T!'-+T72[)$ M]",]!^XQP2-SA%]^UYSIU-15*F-N3(L+IR_;)WH<;02N2Q&#-2ANDX)QA1Q+ MA85XCNT$#A$/KL A>R0FL(1Y.(90@QW/00^SG;@*WB ?=8BB2?75 M:W(LB_FG'ZX9%WN\$;>KU43C#:@$FI(2V<\6ARWE [R/@K=H$>G4TK?W\T1L M;>3_CI_675$.F,_QJ:E$BO8#62;NJ9R*E3+B/UYGX&>-0M(.U'Z M 1C*+NU$Z0=@*+NT$Z4?@*'LTDZ4?N0%0ZT"TDZ4?N0%0R"' $,YET.BA3V* ME8A'V_V"=6PHI(SNL:5,44VB0Z_*M0(DS6TS4HTRDFHNQCK9Y"115R\.[__> M:.[69A0MR2WL/*NSOW!L!QM,4D0^N$PJ2\UVN=I.MW#KMKRK,7E7T#6^4_#Y MSYRR5C,1UMJ5WL_638AEN^^+6NE&2K?F W 4<-0^CFI%YJA3]]3'P5TUN=QL MI;L,"0P&#+:/P=J1&2SRWOQ8.*M!.2O=DVR!L\[#66=/AXF)LSK155>,._WC M8#:YW0%.*P"G":S#]B:HU:J16>V4J@$QL-8Z3UFNM\1*5POENMRG:((B>\U= MTF[N.I,":K;+]4ZZ50:BZZ#@B@?]/#;5I7N)?L&4%OS+YX^J]NQ^"ET6^&FK MUS]]6O>0=W C].]%_KW _V;'YGM:V6KDD#8"@%:H5"769JM#0A!6J,4RQ\:2 M[=A_,!W:A&.B*]/@JUC,RD$WFH$-1<,Z6HEK>W]78Y\0.O](T;%-(??X]NU][ ME2^#7O?72O=FU!M<(*S_P$O;ETIL?9<9>W3/>/*O\O; 7/ MNU3Z&#;GOUR'SSDC7APS/NI?W6G&]_5$N8 Z=*[>XGCT"N$'*@ /F-M#3DL" M?!Y?:L:H-QRAJ_[@L3_HCF[[#Y\_CND%B]*-7K[J/PS[=[?7W5'O&@U'])_[ MWL-HB/HWZ*H[_ 7=W/5_'ZZ?>'=K(&=J+FQLJ/;[?@-*"UWT7[=L5\(]A;VSK..G^@*_;D2)W:V0^4:I3_U")IOB_*SF(P[ MDDW.F;X0-@&;*0U4AHRF%K4T[ND+IC;J40RK7&#PI :A.KK*NECW+XTLG8-2 M!KH9].]1 M_[''7)2'KZA[-;K][79TVQN>!3*I2Q9H!]HY4SNB2;TS)H&+4(&U=/E '$2\ MO(TB9'Z'!.K?6JV19+%J.=7"BM/4UU4XZH>LR%"ZN_D#=Z9M1UV,:<(Q88#A M:!B.HY),'!B6RVU)L/7V+.C),WH'8NC)0-4BMF9I$8I>1=,),@(*E%UAWQ5L M3]'<,I\UE:AHO$3FG%B8UREG 'O6'(W8%^!,0#O0#C@3>1"2+$VA T5X9E)Y_YO_D,!W(M#FQ3-&@L[=^E8CR)(>_I9)^Q#UU"[ 0A$W9M6 MEMO@:@C/S(>P&;PINA!Y48AM<[UJ MCFV3(I(@S7BF/HEI+4&["BN-VC%HUUN?SK];FD.NS1^194\6)(\@0 +LU@X[ MBNEN:%JS>%[HC6D1.L5,7TZQ\430$]; ^TQ5QNS=M5K.Y;BX)0;QD GI<6-2'M0EZU#&XL.(*H[!TMD.5J68XCBN)QMN2 MJ&M9+(#!THZ^+->W/.(E^ZG+3"P?3M18H_^/*+J$\P2$!1Y@O=XX0?$"UK.H MI(OG^CY:ID*(:J.)99)G_0ZQ)F%%ERG M9#EQP>6CXH:"8D@QT9_<8V6J&<1:=@VUY^/A@3C]"8O210W,@1\L<).BH?J4 M7*=SHCH#:0>BZ=T".L=^B%GC&WN0@U\0>6$V(D'OQL0@$\UY#RI66&$41ZJ3 MCP%W;]<(OQ";RB'Z[Q7]47,B[_22,R"!!(%5,9"\?Q$WCLRG9*"\KA5" 8K#$1T'SKB M[4"$]$\1?>!&6&+5\5LFD@)RX*"13KK'9F4R)%<@#\)3IO[N'>HK@/H45WW& M413LM=0)$#]J5F='N+ ;Z$TQ(1Q'3; D("R7JS7ALD:$CK,5S^5\M,@<:ZJ_ M6.7MTF=G-B*%;^%QO/@;Z%!A#?>PQ+;35:B'#'\IH.<"I&NX)WIV.2A.->4; M5>'DD["H*P;0]VO:L$RHTS5M4DBOERY;]:IH !=: 1?/3>48 QTKO.@)2U<[ M7B,4(Y$.L5#=+B1WJ+Y\/V5U6J M=0;%8)8(:%1Q-6I8HEH,&M4'PQW[?N=!X>33[>NBG6X/VE507#?#JD+%H%X3 MPC4[4TY@7(NF78OGH/H+^&B.EY"+E+;HV2MYDDU%>G3I'[EV=$W*0-Z&(,@" M,#>334(IF^+Z\6R6JTV.Z%DIG%[#[Q8<870 M*9E+^^U]5L?2OEJ!(&K)2N&VK@H+K6*@>:_!V#HE8>D,< YD XNG4L%[%4J; M7E/+S:9SS9W6B7>>YKHF*X$LI@S(H\32F)A("I2T/"D')%C,4CAU"\ZKB'9C M*[&4ICB!?=EN"K?R"HZK>*JVOU$D O;<9$$ )9/;Q)'@'OCKG)@!PK;,"[=C M7EAX :);R:0UQ8AHEBT,R<+@NK[MNFXML:Y.Y_)5[)R=:FW"05T">ZX)9#?M M79I:;[<_.3%$\-":((@K!LCW8CR!9*<3,3[17HA:^9M8YK;FK8B&:?$5;U$= MV6(YL!1.EDJLBHLJ^N/\A9WFK:DBRNC#N[_?GU]EJ).,6Z*D!IB M"30TQZJJ&4]!.N1?

!^MT*MJ=L M9]&SIE*7?+Q$YJK(%,/.,Q@*.9-U>T5='*6J**JN**@>/4Q]67ZSV:+=JJY/ M=P6KZ.7>6^G:!V$"K:@!=6 #_CVZ??BM-QS=/GQ%W:O1[6^WH]O> M$$X[AG:@G1Q+N@*MNW2\C6]_+31;XSZ#.4'CA:T9Q+;7:0\L H/93191"Q!I M$=83?",.W [+:CXV./*(ES-B./;([+H4_^+!@=C4_>M/F /H75&C%B!MESM5 MX3*;<[Y4(C"H]V(Z+%'VV+A%')C>F=JP7M: ' ?P*M[2M8\+2YFRHS&H7IU; M;"G#6?(M?C*N(F@)IH MY^9!ID.!628LK?=D:R!6EF$'EM<$,VZSF-^0?R\\F-^PL(F*-+9!_IGMFH?< MAD)*M["$[IB2&VY]8)VZ1AO(XNJ4Y7H&)1VP3T[9)RR'.*84AP38!ZR$K,4/ M\K\4 ^U .^=L1S1Q4@BG8SO)X>;VH?MP!4D.T ZT4QA)5[R%%\M4"%%M-+', M&;*GIN54'&+-F.]AF3^HW5N$0(NP+N ;J\!Q;/OP$7!# 3!D]!]1\E^3<=0P MK]S*0#490? $$.[$L0'C: A#00;P#J+KS &9>VME+%U!-XTG4)DBR9N]X=!. M',5[UPCH3^XH_4]4F5)9:D-U(\#O0?B-HT9O[/BMRH(5_H O5@Z<]O/Q!9M MU#9UE>)4)1;RS^E%0\=4OJ-5/B!+/@%M*JSU?DJ]7EYK+6BZ^QC@$/ 1P P MY'")6MQ4L*HJ J,+ -TYI5SO.0!=9\T+ 80T#?!4#/IW_DC6KB"R!!8 5([IQ2CC=Q)#>%)=O<)IB' >GK!>:?.*KXGI-_^$ZW[/&/:%9&_CWVL(UN$\W MA@(;W8HIZA*LXGOC RN^G3KM5@9WZ@#OY))WZM4$"_DFP3L-,!&R%8C(?RX^ MM /MG+,=T<1)(3R.WF1"%#=QE;PH4VP\$611GYC^8G!7!+R-_%A,>PVF./)@ M733U)ST/2@.*I+[!;"CVEQ4,>J96$@^\V(ZE*0Y1>5%!0]W\(7#GK:'H"V:) M7&OVW+2Q_I5RZIP^0;^S_FK&@JC>T0JF$34I2)*R>IX"L&,^V3&.M-[,LF,K MW>SW_)QN BX1M /M9+8=T<1)(5RBT-,4WWDK,N\1UO5B+<8(:VB]%0(^93." M;T*=9"P]TI&8ZNLC8ST3*FB6N:;:R;4&6^6.W!$KDIS[!1>!^6,O>YRRM2%+ M['$IE6O-#*0HBZ;L\Y_7R:I\44B6775/ULCD1PU8*]QZ1_LX:$SHHP9+QV#G M$G#X%L @( ,$Y=;.S T5T9*4($%!AND^&:(0PG MYX'AF$E2+S=:Z6Y$SD^0LQ!1B>,,%4)_+I2)\J8,JE$9I)J+L4ZVA= _A9>? MN_N^5X"V0@1H\D&/\PA0N56NU<1:):H5V6(!_GO-?^U0CR$?_"DM@J-7)LS M=IR:PJ,\5,01.MU(,Q3Z,ZLV4HCLDS"+7CR/<;\G*(5M1CPV$^66TWW$R/Z( MM<@5CJK"%98N9GPD@R@.VR%R;,)(3"C.0LDYT=3G6=V"_%M'T ZT ]9XGJUQ M9H$3!VLZWQZ+E;\6FJTQ70.A!F@'VLFS<,M_"'4KU'"#-0L]8WU!N*RS;<*2 M2YC(LXA:1@;AM4Z+4A @#]Y:'+M?'DR#D;QO/6++\;YTUWKP-X:7_J3+T=+U MP")%+3):*[<:@A4:+8+H#;:3('XI6LDL.)X+I!E3>F^P5V2VD]Y%TC[Y-ZVW MM,]=H&PVU3V+&9Q%(?#&2BF.PR@.4RT!8'1=7$12+RQAL%ZN5@4K4+EG:R1H M%M LX->>U]'/TSK._NFX+GFT.]8_<_"=EC6(:@38=6)'$LQ M2UNQS!_79&Y2EV1]5,BC9!(^(KLOQ[2Y^"-3&QQKFNG0OT2]XK!/^Y?-' M57MV/X4*XY^VNO/3IW73O.4-@>O)6T_<;G9LOJ>5K48.:2- 5(7R,+$V6QT2 M0J6Z8L[FV%@R]^3!9.? .":Z,@UNX[( "/)./\,Z&CKT!RX-/NSO:^PS0@F M%!W;5&(\?OWR:VE;%E2K_PJSW;U?.*#Y3YZVWGS?S6A0"N,#;\Y0H!%?VP=? M,)U4+//'R@[8NJ00Z@$^?GWX=K^WC7 E[:-^F_:E2X]-4*5164'91^G&Y^#' MZNQ^[56^#'K=7RO=FU%O<(&P_@,O;=_=86:!03:&_@E-B3N/,C/1/8OH M'U7^7YBQY%TJ?0R;\U^NP^><$2^.&1_UK^XTX_MZHEQ '3I7;[$\>H7P U6, M!\SM(84UW _LZY>4->6'T;MM1_:>E@6 M!FP9[ZF>;L"6M+7W>C]^Z_;TYM8ZN;R^NKSNW9Y?7M""^@'0,GQ\<0D? XG! M%RYN+K^=?^G=GGZQSLXO>AIVQ<.0OP&4M=Y)PEA P*6#*_B37[ZX^+W(;TJQ,P_WV"C+/"K M\ 75[^',&Q<,6Y2RR2# M2II2NA6U(5-A#8?Y2;%>03Q_ A1'QQ8\,)C!]ZHT 'M M/M8!O0*ME-%5\VF?!4I7>76 &;^0$78>IK')(3_XY7X[N$ M[ZW3"1M$@>^!?KZ%$[.M4^_>A=_Q$J"/6WGN5 $+-[@2!*%_<" U#O[[TK,* MA(;UW0E@K8VF;>'&6B1#'IB%UOV$H1D?C9D>PT%:Z4V .TC]6S<'LX/>@0U+ ML_M^_=9O-^H?X2OI#X\,[FP>)/,NYNPO8'3@* M8!("#<_FL"[Z 4P5WFLR ^+_!2<2L7MB M6T!2_[7\[;OUP[R9%L_S]H^+A:W]]AC_.K8[1]GX%XIFBL%^( 'QUG7?%5/" MDAJ(9]B+&S1,E_&*=A]$I8P6YVA3@\P+>6G>98#_19$I)3G=3GRZ1(@7[1E) M\4;WR&ZWLE45W(BF!EZ4U\!54]@GDF(V[W<;(EYR,55U-DE5CY YN?O;\X9R M@Y^U")+D]Q#' J/J&$S\$-6;$N.XNUPYB&]@M"C5-WU@W>*EE$= ];@+'6&PS\.8*[ MWA'""BGYGMJ=902T;OE2.\MH)83S$O-O8VQ4H0T\;F7YBPPFWG@[9!.PSP,N MFR2K ?%BF"#D: 1@5<''\QEQ&Y WEB^&G,$FV6XJTAV^YS%^+ ]N-,Y8@-Q% M@.\.63]ZK&4&QWN\#&[\R4P!AF>4=Z#7;.#?>>"G#<_1]7='+DJ]9#LJB,-L M$Y'VER_PLFN>8M?N-+)RZFPO;.G$\9^CP" =\=L'PT"88+#U W_8GBV0 M!$,K8$QH,SG)11>Q"5@(& V3(45%J-X.'PW+D )R^<-MZRN#7?/@#S?P, >> MPNST:N#+8^ QM= ?!_^BE^7A _ZB?<&/VDIX!&4R26Y$WP>Q/!2@CPYL)7W/ M1?N.LS'^[6 _R+&'F\/-RIQ0#,6:IEA&"8HZWL!H#/KR =D?1V+:"9+#K>31 M,#0(R1D@NY(%0%)?Y@S_ZE@>^23X9+S.#^" $T=$#X;WH 3IA-TS#@YT1\$W M_CITEXDUR!*'[P7B MZP?6>6PMV^H5$AM"NX8'RT!6P!J&[@A,([2IH\6,.U[J);C=D=T]E,YH?/'0 M%_IH;HAV&EGQ7L@.K!Y&-H41CW>D5R#F)9Y9N@<.;CP.[ W5*NB+.7MC"P=1 MDX#ZJ=+6X=+S-D[L+NR%V+C]X%&D\T0<6#*8C OBAR(BB%81'I/VB?BV#!F* M^*HP0\/X9/N![PPQ'Y;S*%L_8B(#8 HK!.JB4@_3TX0,"2CI *0T:2@*A7J(OB)8$G:X'C"7\28KS/&+]N IN)JT"# M?L+D=L%-^;L_*,7!A8BV2Z2'QP[:3D!B_^$B(@ _>!@G#?!I@C=L4MJ@)2G/ M@%XU]]9!#+ 83ND3;PI Y(7G&XJDS)T+M$^:NA\+@FJ/.B9]86F,2 MY&)PF,C;)P:+E%'L@<@#BDP*&KQ3E'R8K8G/M,#QR9P3>8X#ZW(>D,;TI$&) M 02?CST!00->5>B.2/X@NXO+$D(>;@H$ -](G+A,I-!"@GNFC!XE5RB^+=,P ML?92%TJ?Z\YWZ$,PN><#N9 AP[8S3+18/I=-!8:I[S$R3-7NJ)7'RZ$MG3F8 M\IP#U=$.HET4,D8A% J*P$6,UN1.9PZ]N77O3T#73LCR\]+G@&OC:0^4Q#RJ MIDH&]D3H(8&ELCG2+B$2187A$66ZL$.ZGDP+"V6;!)P?"TX80(P;3/L@8+": -WZ+H]_@)Y!-V*#&11H\'*17GZ70E(?E,;37W=<@&"D)9!?#-)\6Y KT_R?!-[0+(*>)'62JPXPG]IS(R; MP:6Z#$!J1 [V>UYX!!-D ^ E%+/ 6X,#;IRCT3(: <,X6"RG=(K\IMHXMSA? M]X4-R*W'=%W#YODZO+^6DUMQ!Y[QPTB"N-PO(%0NN8E:TU0:6VN4;^;"RY]' M&/_*R(,XK4S;53:U3%N7R"YSCXBK;3A:-,.PG,EBZ@7"I(POR)\FN3']?I(_ M^".!ML-'4,9Y^:U;KJ3$;^"L9 2L_8P[FMBNO'SRBHU*O TN9HEAI&_?;FR6 MG4=[LKA!;MO^:+.1JNB5>IUJ', *HO@)V)FBJD0[(^4=JR.PK?X\*I)0GA]Q MJV7B3EVRQWW;NF,>V ^@@H#C_2FO7N1F8#IDYQSR7:%KGO$9N M R;)P-B[Q]=2')MR]Y$.P'KW0SHMVJK #7_2ZOK@)[-PP$U6OEK7 W<:R&(A MS%DR;CW=.Q_-*1:C(F*\@BGKON2:WC*Z0X=S8"%P6)QY1 * -\<=!;?](=(< MR9E/[@ *R5B?B]L5:=2IL^":=.!@^=61PV\J@A2XM0&[=]F# MC$PRS"_SP%6\A B31]S_X6'14BN MRKUO3+LUX<=G ]0&XSF%(^:^ ,17IN[ MHAQ3%3)0?(\S5HK<@,ZG4F"Z+[.XJ] MHAD>QU[!^XM?A4Q3LE9_N;Q^+D&2+[1.&116IB5F^-2#@4='M/^+3+PK(GL6 M;1(25$KXEETGDFA RBXI;,A?KT5^302P1I,YR@M^I'#4@EWC *Q0$*N4XW-K MK1QMJ14I9SL"UFKB*.HIV' ;AR6[.*RB\^UP9T@M4>MB6-;2L.6FCZ=V?3SZ MB#)]'\G&CU)[EBB(SQ"?I,O,=[9CSJWR$1=6HT$UH2U;%842L5*- I[S^I% M-1 S-9YFLZB8""4' =Y8/2P\X/%3%&-O4G]]\XY+?A0O<#=EHG$$/FYI8V"^ MJ'*MO630T&&MT=!_O)$91L+BN1P1_AM/ED>P-KY^N7Q:IUIFN9(V#5!.1U?@ M]6IP>O31LKKCE25KQTV$6SAZ3,D:II^X=:'5UG+QEV+M5[AT\8QU]W-9)6V?10\8?R_+&''P9=45+7'% ;\$C+F #1B8_$," MS*>B?C8,X^0:FO.Q/H_/N?C \M!"-G=@*YB!@'J?S N-8[N9,TX,,=@QM R<.W@*50A?"0I1VU9KEMZW M)I:]9,G][S)NQ9.7B@;)A^36(P.B"SBQ:W5.SFY_'%Q>W[QU;JZ_'9^>FBE5>ZB)5H>M2$ZO%D!USR MCEILCU>*4>$'PX"W1RND>NUXS:HG8A:PF2.J*3%,FO\B>"5:!Q@#I@B6HW04 M&O]PQ0R=,1%3G]#JV"QB*GC^PZ/ .P%W$)7UB#\=Z^T;+("TOO9Z5^#!!8QB M4Z$(>4Z=G^ D2KJ3&=?Y=*;%47FV@$>(J?<1G;TIWQIMH!0EJ;3J=/@=B[\F M?DAQII$HU;BC'.62:Z)$>PG^G+M=,K:?MYR W3.L!Z$H+0_?AM:0-]7&U]"V MBD*X'H^CRP0);/MD*&K=I'F/U*1VZ< Z ;7LN"J2+PE%3UII+SO0&PQL%4EW M49%-?.^N-B&W@N^);=T)\#_XIE;/C:3I>'=N7R8-, N&;0HX+7S)?NKKD4:A MB%NCX)E,_ >'M_]B,B N*,%(*Q6-\ Q1_.+;#PUN13*=0%97(9)35TC(!:>U**:(I23 M[E15A8GGL6',&R/?CSRLPG?C?ARJGB.YB4D\9,TA1;Y!ZM$."5\Z9*MW+ETG M6^8:<'Z(M_LH!1S9.//7W$MUSJR^$,"? V@96'+90=28R=F&]I3OA+0IQN:BL!2_@68W2"U0% M,"-WPML'2Q2Q'"7:UN66W_ 4O50*F7G;7O5.(TU MYCQ\=,TH8D^V%9GY2EQ] ?L]<,G&2-GVG1VU[=/OFK;@-70'*2#U:GQEP,26 M9:#NR$,Y?8[P )8D6@.QK.)ML>(^_U"BF!N@I=2GX9Q*< [&*L$XA[,[10-1 M.,'%KO#1CK)+_*X6?]D"?I'P,U.'JH7(U@U#&336FHC08>&6L6JU(?\%(Z/ M,?BOPJ2^K+M&TX9P?=0:&:U1^$Y)RXLJG8"/-5?']7+Z37+-"*G@"RMC"<*& M5@8?C<,2A@#7M,(*$)HV56HWI=I_K7>R3,_DX<9[)HTX65NC#I?X+A+? UIZ1&MR-H2IOH6$$Y#S)OV=< MFDA_?:C?0%Z4]VP71=L TQG452<#$ ?66?+Z. 2A;A'HC^LOM/#"U!]B"R"/ M?L5=C['G_.B> &=X[X9^(/J5Q KD)@RSP231(JZ;5*,)KWL5OEE"0O>="=5" MA&-&<1A50)JND**WUMV\C,^HB?B$:RUZ()=^4_>T95XY%VL%B4%X2.+YH^20 M]_C+-1GY61:1TA6=(%"]-V)(U;=:8$L$!FB!0C'R5&[^E307A3QN"5-0O&6I M'1/?%6:R(.(\"A<+.[!Z.>^N16_AL6$R5#=A=Z+(7HNY4B8U3JR"),)&[0F_ M&O0FO$Y$S3&)7*OV^CRHIKUUR,/ 3._(U;=+"U@2&U(U*J_=4:74M,@AV#8N M5<6BD-!*5$O3H?&E=T*%$^"^-\3_(!P4D#D>Y37#3@<48_F?YRKYXQU5\OAN M"-H *#>!_H\\?ES%[Z12L1M[X9^T%40V>(D@XRMDRFBG"I(AEUPX*; MQW@A8"I-J/9ZC%WVL1+F\!RD7>*X!1X?2QT??=,) E<@(?F(G"E@.&-PHE"3 M\+S;B6XF='5H:\"=0S[-#U%!,#@R=N_&)*!GH/3J! MDN766'/#52X;BEPF'>RS MB(11]&2_R"V/X@E!.V>--E%B"Q44;>8 M=( 8"-;%\7[ROEZ!0(-_L+ I!Q:$E@&_U2"9!XR;?X1;@&K IJ6$XU:*-:4 MH2@-J?]_S)MWN0'+PREW#C(#MW-Q 6 ^%3?.Y,465M539A(3<7WRV"F\5 9E MY$%I(5$G3)_OZ[9J3%/$IR/3%&&:(E[>[+ZF0F^T&8H+T8[J.VI4WP8H^WNR MO"E^7XO#$HBZ$(J'G7##XAM9)?M9ET:[I8K! FVWA(// V>1J(RX]]V!*DGB M"0F_E"78QS2_*Q!_R8B\0RTN;;M$7SW>-JX%D^9&"4T*<@IM!+@.[ J?6XFP M.[S'&:Q':CP$BQ1K-L LN?,IYL-7P%1T+\R8//_0[&ME\%"S8YQC (/5?^"D M*+&B3GEM&=P-J9!0MWI#G^K:>F"K#(7'XEN]>03>C!OQH$=X[P1 CST.5\8WQ M06Y.5&'$K0^66R&Z99-W^EEOX]E;YV"1!7/^YH0-U_B09,-W'%WI'K9S)D&& M9$A,FH5.@HO% 69]BT3E9$S:(L1:< ^L9$5#F7"WTL]6!BJ':D;[+'FQEVS0 MS5W!N87MG'3\N@!2!HD=Y>C)^J_CU*@CPXO)"*M^%+UY+70@H$*=PIB0M$<@2. M5L(6J(WD>Q2?H]YK+*K%]L0E%1)#\]D#"E*#XX>![%'"^8K)F_Q@X(7Y'XH!BY B) ED#%=,\" ?*J(C(!F_H(0?LTS9K6_U9S)&6V5D[TH2:\&,(*$:S*="HJXQ1VY8L_[T>C MN81W#V,[]D]X1^P_77=,1SL+:%U&KR*IPT,99^D'7$0-&1W5E4[<0OTM ? 2 ME:VE"U:X8->94ZO=S<:+BEY E^ M>!+2S-4<)=E(0>8!E5FDDDYV.EQL8SM 3G[,SC-(M#_.G(7Z2X# %[++2%3] M<8DJ8.@7MO+HR2&PP@=G%J-^Z?4J(X&@FU>CH:6^\M^MU))EC4-BU7F)N.(\ MG UZ@JGN74VB&:&T#U(NDBV,$83WF M<'.R.H+0;=9E!"$6&IJ8?'?PR/LHIQMI0R^P&;OP-J!I%V+],?--^>/HA+0+ MR)L<:1@+NE>M^'Y W>SKWL MMP5M+#N01*48IL/R7T&@_8RV5LFI:A](Z.M?ZYVO65_UQEZ@S MP& /PM#-KP=/[_8/;8_9;F]&VCER* D$7A58143%O62:C=>/P=O-9_.N882 M-Q<6OUJB&XJ>)VDY3F>@PT0)/387(QI$)/0K;+='.:'1JDC+R$=ER7?G?^>@ M\!'!F)L[.E5SFX=ZG&C^RBC@M>)89X6U?[($'.UT77=;_F! 1CCE)KC)X$@4 M"1$/4H=>*LW19^+5LKQV&*HQS58E:+R!0(X^D7E5!S=\(I.96D,;?$=UK^'VDC'# M5XB;#Z3YDTT6-5QHK4SL7FWYDW?@?&3S:K88N18E8/Y[V'Q0EWP16L7SOT4R MQ>:[CP/P^++SCI+&3[@KHIV1U!6\C>; ^MU_ &X(P.5_ MPF95X+21V?$E*(\Z]A'\I-3C5Q.X0AZ7FY:YJ,2Y(%(W1T99:#FO7([$N7#< M34I%PO.^3>E2+D#BMHW-MU!O&8*IW!GP5G06EB$WTM:Y9!8GVN.>L_-2(IN7 M88?YMU6K7BHD-(U1AK)CM2-6EWKDRB7JP3/DN131Y?=(8:\SOSU#;N(.K!.) M+D!;F[5 :XI\&IN=)?%4_R'<(;E27NQ1K-%PT[@G+\824Y6$/V4\2.@,QK(4 M/P:3RO>V4S:S?E='30N4%=LC"LR))^ Z77TO:038F&,E^-Z 0$A$NEG$,<0P M<6%3H94DL50$R);'[SX+7%[4X('UCB,5V-2=3_G&2-&L$+S*O9?J#-4Z'B7@ M5F*"VE+PK>0$E)#)&@ !I:4M%(A![APO.[$ML>:)G)@@_HQX.;"S2Z&R4E\7 M9XP04^(O6FXQ-;$=![/ >@:NP+G2K5D1QN63W>E10Q=+0K :(+ZA_O)XH"P@ M4U94CV1'F2C0?.X(\C/W8!:5L@3.UX0AD9 MFFJ&*'4LHJBJ^:,:IA=E!?WUY8]X:K.X1Y%$QC@D!E[R9:8:PK1*>"XA,J$2 MGG-H%)]F)2IT*S<'%BG#H[@SHH- ME:'-XUXMMNWE>6>A&AXG@[H)5N=LB?;.C)A9>[P;G\'03G\9/\4"R@B\.YS4 M1T$?>/T\Y \NHV)_,?:HYF*XG2[E=0%&02['6]CD4#DT%%4Z:_\(D\T-,NVO M^XN)?+J'HP3]OYC B*;#%+WE!H=O!_+'<777#G@818GC%L[FC 6[VEI M+UJ,PJ?4I0H]8%N,.F "LH)'PW*CE0SW[X%2)SC;>GT81-1 :RJSA2Q%AHW@R/,U=ARM# M7L'&\9TH-B-1NN+Y[6(-,0HRP1))&&\N1N,9[U]E>Y_-"[(IGR;6CY,RQ^X, M;?KX]K&5+AY$/502HP#D(Z,B2'7:>@C(#6- <6QSFR36[LJZ0H[CI:\3'PQ2 M+L0P$0_&S'R7D/2Y\<=C-W+1Y%ND\1GEW^-M+'<\\DSB2B^-6.)6R9(M5 *' M&U5@7POV*1KB@X0Y$>FP(W$7)L@ KLM'<+K43$:E;X-(QY82U@O",0@\J&5O MFIBOF1[FLVQ9HCAAPA 7+@5/$5M>B592OJ%:A2:_V)&#D,)EW$8 8.J>=%7( MS0@$IR+##F6-*)I3\'3\]OBD?;6IKV.FTWN<8@=$!.FI<"]4L%YQ\>(#$YV5 M>)*",_$.3,)FE-D<[3%:X!/EJ44".)ZQ?),5]BO35]$+*A N**X1)_,4HR[LU"V_TF ?&TP=2R%8@P_ .;OWLY>;\*9J!K;N) MWR<(Y-ELXO+)YJ[G^?<\ D2.H_!WJ'Q-&T\>^A,.K"705$DNP2+GV'G,V\OX M8' 1:@*^P&0)4FL\_EWFO7 ^V-3'9]IDGG@A^\UA@8^SU0B4:+@#Q-N$Q*^-'5#R^(ID1HO%/OC MIOY-%# 'DW'\UY.Q@PV-/ !"^S08N\#* 9EA(Y /*#M]@>8P G7['XVK:1CZ M9"+4,TJ.6P:^)A47VM:->S=UY(/@+_P>%Z##Q]:-V 5EOA$"%'_OO(+#U!M3 M#B^DAD_:,FH[9F**^"*,V!1W!9ST.R[#U40E,%1[TWZ BS[Q@YGP.F)B^C_?.K8)NLSO"15OEB!DJW=[RGM<1H@6%C.> MOC#7NSV]N;5.O]^H5<#/*KJFGUU\'$#K[@QK$FD0^1!<7OSK&#:/7IRB>+1. M CN(E[#Z: *_#^P\"&L\YL3BMQ77DJE+81=E6,8&?P\\("39 3I.0X9N.RXF M$_-/(ZOB,*P)B%!AU)<94])H)ONBB27=,*=YJ$3+4,N6*0)M5SS_08H8*4ZU MCHZ4'*4WTH1A0MIQLIQAYGT"$@_-,HQ^:+L;2ME*-HTT469^&-4>R&Z#RZ1S M2C<3J'?RT?%A"*E$]R'Q1*Z:%(A@;Z"Z\>=ACC!/O\-S"73U;OM1H_4G6^7= MY3ITI$Z52R#"@77FG'L:S-+(.O"M"<9Q[WY40O M!P,']:W$KD1K82[D+/&8]*+"WS ^[WL\R>%9?39V)AQ>P,L!VMCX[IERDT_' MIMS$E)MD/,[;Q8RG\I9%M$OXG*]%V!6%:I/Q5.PO1I]1PN'#Z;M#S,S'>H)C MYG+KC"R@$8].LU\8J\^-__/0+)A7-'HPUIK\[Z3"X'F8/XT3&BB%Q2!6-%.D MJ31BC!?O@"J$]0KU-U4]38P2KO&Z77 B9"=L\AT.K*M$K"L)VB4WJ,9?$>Q? M/OR5(L8#A)F!_8\[T\2WXJ[;]+/6B6NI.&"IQ=A68MZ0'(TB_%$1\.;'+T%J MT&H0=<#RSC(._J<(.:"W$CE4[H_E5Y-)?,)QA(%3BRQUBLM_%I2M#6B9*F[A MIPN "'X9M>Q$C.%-KD4,;4-@Z'$<2X_309N.JE42=AX$GI1SUF8OA/<]=:>\CXBBX#Z(R,A?C\21SO_1L'?DJ M>I-^F?>Y]84BB)A,J#R43GIDDUWBW$(,.=#A$7:C>%]&&R5/74-#P)-2:55Q MJP/K2^HO6E%+NOM(EY >O$MA^_(#F]PGH;.6D(6VESFKD7NE4#USNE/Z;.&O MF-Z4NQH]W45=M]:W1YXK3CX"&[BFIFB+5!06( *Y^]A^($= I+<^5I'JDYA, M^:*N<%R5BP-H)3J.[ \&6N6[UQ-,%8B_]\HR&35(8.<#S73F.7$=-#.S7-@P M!:":Z4O;#VF:P ]V^OX]Y[5E(+VE6L(EY.X^@.B"-L+\0.3+DHDT:FN>DJ)^ M'07^S-/W,:.(]A8>F,Q@_27G=<.XJD84@#6B6ON ER%5 M@BC)P EYO/.R3SK34:Z=K!"2JFU_+!^D=II5SZ4QJ<"ATDPS9R'9CI(/&,+DWP:R"WW/8Q.K&/\Q,UN07ZY&PU">,Y2P M2D*[$(3#9"# &A2=8LTJ/!?C2\Y=#("6\!F)C=$;S*D&0U?T0!MT'J:'*#$G M\)@:H+CTC773\F%9>9PCH)W@)0)]*E[)!3QY2Q.K%&4N>440Q6N-;>R8/'0) ME%'$RPW-*1[_NMT.O?<@6Y3::52!"(I7T%[TLIV M",&&_FA$H@SE"NU:>AJGOH4?J.J#8:^TS7\LBP7BK*KJ3)N-.>^DB[?8,U1Y M6BGF\$V6W"$=9: 7UOKLM4D%@XGC3D-M"!T]G78K,6U$:P;4=DX%%AV/>]I# M?:5^'%*(*P/.!>M849*:O48"7^N: M)HRTH:S8%2E92RARGG?-W8JTFI&7N*&\"SXK?<0I]UU:%.LHNCUQ%R5<9"&W M"O=OQ=2Z1@ZL9 *YDO S.?*#5A"]S*0UX)$[T?QS+L)**W#%VSO:\R-?S]W3 M65[:^Y/I0/V#,2(?:8JB]GTW"+FFK[E>86NU]DT4$P)#KQ36D":8'IRBFX!NZLU6#D^Q+CW>SX\@!*#+Q1))]]Z[L/7 Q ()C[D/ MRH?1T"3!.2H^I%D<(K@F<*7QJK_$C*X5MQ+Y1 GT+5*="OY+7*W:#)Q0;Y1? M\"T4G]'T'$_T'*6!XLBTP&;<.R8 'JQYB+^0H4' R/(VTFC@J*)H*(?+ M7D*]M_X:ZF9A3_ RA8U!*O0 _AY[62R M/XE@? 3;O:D $8GD\5%ON#1YTZYQ3-&PUKH%D"#HO&\1RVCDJ-XRF>K:-T'XW/^>(_>&N.SVD<=;+S<_ -B]^AF_,. MK?@=6IM]A]9A]ATV.+]FA75*,PMELA)K%%"83A:FYF\+-7^-^BX5_27*XC*> M@OZ9*4M\U66)+^ ]?4-X%O:-.H&+':C#'76@^+OMI>^4 FP7_=[K K-WVTT! M^<"WE&,Z:##((^J'CIN*"09=UEBBG8=%AWS&L&R(D!E85U46A@/P?20*N/I\ M3'U>T@!W);21]58"%=G6;$)3+K4"43Y^AB8RAZ*/'8F=6WG4ZHM=]3['?A P M/DD4',T$UWK@R?+,+*4L(+K KP0;%[C-Q>9?#HTD?XMK0>5\%5^")FCH AQ^ M1W5[3N=AN>26*@J=D8F$ 6596H"!8BS7=*,Y N580Y8G1Z.5CSZ$CS\]:JH1'_+' MT8Y)# FZ)MX&GN[.*5Z5"$MR6(!X+\VYSRQ"FQ@\%%V:M:GS4_3*4F_W@GNH M8U$>(P'6> D7NH8'%N>XG.E;@IKB>($$=9!3UYC\2V*JS^-G5K6;>HI"?_+HI0L(';%(\N22/*^6II.(C7S2P00 M!=*'2YUTBD/I\X,T&:>I-#UL3"MTH-#C=(JI-R(M&D">X"ZY0H6KEEI3'K!* M$>E=R#2OFG_%:5\A5WA*@1#H5)''+8 X6%7X]ER@+Q42O-I3<'1(W)7:O:DSE #8XDO\"VA?>*(**.YM MY.GK1R$*B5Y&I"B>%R2L/X$HSG0B^I/I*B1N@Y2J.Q>(/)D/U5X\0^]B7HLK MX)RKJTA7L%\L /TB:G1\86F1XDADH%.[F2SB>106D'62[&?- M*"'5)1HP#4%JY/["*!K&>$1)#\9\@7ZF\ZD5$'7*T#5LTY@4P2+4M7E>%RQB ML^A?=^+I]?)2A=) (#3Y6L:< :WB*Q(84D1K%6_<7V52')&6*9/F>%B$H$VO?!"1+?@4/!:G5I ME,KNW7P L21$6%QGD8L$)KO..(W'+#A$O-NI'T8I\2[K1?S1R)6@ 0CG,/91 MH M*Y683ET%YZXX5IBR9)H3\F%90IO-QIP[L)-8JDGVE8=.+O%8*J#"+-(F5=+%$B36N!OPN\ 'MC*(.YK9:^T$:597:G22(54Y1E3#8==R_)4$G2#1 M)VMZOF@C,^CSY"H>\P)[2C52* M#3@I1*KVF$*2E!J>4'&)%3"BR=S%8ID!$ M5SO_N"@7=8PF$19#ZZWXK^@8D&&%$A6:?(R- -^0U659>UI7VN_RS+<,ZN-S M6')[2HAE1A4?KQI5?.>(ADFEN$WAV$ZD/K[ A1P>;T7FH[.CF8]S3*5BH]HU M2I:;!V=F]:0%O+?YD(#$J2]@YEVY110$"=SPI]3@H*')**C1)]@P1^X^*2[* M4?/!"3Z?>:+?)<2-5JX&11%&(YGN1T(% 1PM>0;')B /N2;C,J(VQ=$-=_UJ M2UU-L&I+\DFIK'(I4FR:DZ'!^AP?!_7'T,3]=>RE( M=^H@"%-CY+*XTHE,B<$\LJ8L&OM#W*'T>R2&O469T3!%A(_Y#IS@QN8X,OD @0E,0L M6%PSP=N7HQMTRWK>\)L_<"9?,4M\!NHSO!:P^=PF*+8,CG;4,H@W1J$Y<.@+ MM3U(^+1!Q#6T11;MD46;9,E=LO;2D,AI[E.(C7$(&:31M3\8@W!!,8W+^!\_ M^"D#B4N >&T>'1/Y_^(:Q(75K#>Z$O T;9>DH"-)RPJ-JY;%80C'C,I*E<76;7)6?7?)Q0Z#:CW^ *XMO?+#6LG ML,3+D5H@\">1X>4(%H;K^LX0H3F_I/3I3+].Z6G[S:?#PWJV]!3.8,PF,PS? M4K0_&W@-HX2_CUH+K94 5) X.!$DH0 R#=+EI,5S:"/*@6@,6WP4W2T>&>* ,U101NI< MHR"1$VF(W.'J ^IRX/#"&(^G4A15%#1!_!,*9['I;.+SLR?C#"<2^@.1#!> MTA+;=TCCL 223;%<05TJK/QSFB#YFY0M@=+?%M%[ M%GPJCN /,B7'3J""883]QH88\"TNLTI690NY6,@4G48.4[1WCRG@;;)<(;:/ M3QF7FQB3))^U'$8**RH^%/J5,!#0$/ I5#.4DC53AE!6F*4K+Z96?T =*^R\UR$5*7^',Q+59D099 M12HS?BCY(4D?A&9VKP[9!FPJ<%BT.ADI=&*E'JN)+\N6D*[9X@Y6#L %E6PM MV_G$9@M(8R VMJ)OI-->SG4%G"-?AM3VE7B5-1FF>=S-:7AYC'@1XG\=D80E M&P11X''@2CR#N\*E(-(K:3B)MT=C9O<8'"Q1J]N MZ>]>/(53[\&@\*28I3+0[K!VJ/BHT16A8GU!(#!HK8E5OA/FCK#T!#H;US9, MV-QRS(N(F#XXP1 !N%.%3O& %RT>+*+(O')//4&5Q,>(-(C^0D-K_"&;<-AM M#II#=;J) #-MEZRJM&.[,,*ZR(0-E0G?2L 64;9S8&&V-S^%F\+W67)"V& 2 MRF1*L1SF_M.KUK>O1IJ=D_%]Z_PJ#O4>[ZC(XJ]GW6(-7X&8NHT;5K3J]X5D M:C>,,0KB)!?/U-']J4;PP/HA! -\GU]IQUX0?*5DA3T5/L956;[HML<;"$!5 M&OP.7^/RB9H[5.B%4GGT79 9-&&1BB>C*'#[\XA*V=$Y$]U-?,! ], $M*]H MY4"T1EFVE1XSSZ,O"L1UR2OQP*H;:-W>M*H^E8C$GMF*;1$3IH9BECGS')Y] MA*L"'M31\%A%0M+'C^E%Q>D(CX$P+? 76;_HDP\YQ;%GP2*Q)2)/GD8ROJ?X M,I6Z1M$$.Y,(A8'RV^@4ECEL/IU9E=_%;Y(L8'(EU#+."$N#0"8Q:SD^B&P9 M(!<*MTE556'#(:H44;.GX'UU>&ORYH?S@0"5S#GQO'=S1Z(Z'U015@[^9)00 M=DI6KN&ZPSE&(/CMJ)"_'&H(]@-,-@TK;=3,VFKF5*2KKUA ]G.AMNG6=U3; MG*JD_#=*RE\A"CLO,*>W+M! IZE\_HQG_/%2'@VN431L@-R&=MD\XE7G-*L% M614G+Z2+ D15^@,YJ5AF( "#O#E&::D<5WL$8GM'A,Y(L\!Y'H&# MPP1*+ M'+H36MJR93YUB1)Z4ST2;6V0;KS*=<7Z3Y9=&+?5S;U[#!H-U9;@.&0<\3?@ MM5R59H"YHP\6*3!@ M!H8\5L>HI7@T!AG?*\T7]?WA OX3:"O^G3GX7FK-6,B)" =3 1[KP_OFFLSID_AQ+29PR_85' MM6O\U.!KLU\6Y1&MX*[_MFY;^,^[^!VZ^!)K"/J5*\L7^WF;D>RA .OL%JL8 MK.^\@.$4"QA4$5:U%JKR8/'Z7HKFA/31SW4Y(?X6!9_^C^'RE^?RYHYP>069 M')5YQ=C&$-$.$E&K8D1D9._+LLTK>%3[=;[6ZWS4-@]+R9(-"8ZMQ^*.4T H'48J#!Y=QH?_&4]=U6C62]=HGE^<856S M76]V[%:GD:G5W,#!YNUL9:AJCPFX_5C0^2T2<-T^.CRTCYK'523@JNA,V"%+ M_NM5Z\RKX@S&^Y?US8SQN8.O]3H?93R%/?(4?I0L*(@+D?7*@E?H,92,)E;. M+BN][D+SK?,L_L=Y#&7,RTBXX=;3JCQO_;A1X8JWZ?7BX03AVC9=JV$?M[+C MDC9!.+GAU3UQ4_:;:_*FA3W>Z=D>U[1:3>":[("NJG)-5:R$_?"-U/^/\>N) M"IW:<9EP8]E",Q&+%/5?>V!;M$#:#/TY5F;MEIA7DR>+R/4"\G*UX8GYS52#;\R-UR9&L4_K&':;K7MP^[N2%;#.J^#=1K/8H%LE74:AVV[ MO:7<[OI&R6^BM>4WBO=HD#9:8Z_I)ZYZ/S$LLZ>0&*X"WX,?^2"1L 1R,7+? M;C88"ZB!$2$0TQ3.\S"<,QS#P[PAATV-?*LG9JL2=+H5[Y3U54P^W5?JI=2G#T$9OJ?:"S@-TC M_"G-7!/HEC2T"?[Q<-07P2MR# OMO3!^R"$O'!JO+(;I!"P*? 7EP9$99=NS MFO! FS!R49\(N(T^@],@S$9GA.",10?P!6B:#J!Q2("!+7X&^AO+=EX!=_]L MCY)XAG)&AL#+R,Q0B))[A9@?VO'E#?#-0539Z(BPF9P2 M2T-$Q$A". S]RAE0%KP6\8D"P^*38-7-^(241-^X' H8(P!9"!J;82C)Z.AO M\U9M7W @^=ZT#E;B>0)2@*8UJJF!L +@"=0%X-^#P82T!Z]+OG?(T.V?6-CW M?@?J0%8?B)LB%C**#%N;LQDJT/L)@=[K;T=-]0S$$RV0\SS\,<8E"N7X2(F_ M UL.OPT16"9R"9"'/P]6CR.C$(L,L8 24DR.,4LL$1$.-.!9!\=YX&YR_89@ MUB'!A^/S84>=NSN<3,7#%0LP'0@4"3_\"TSD<.@.^'C8M.3#V;MYIZ4."4$V M,@>.KZE@A>';(S;$;;>US90;IS\^M/7IZ/T%010 J:)DUK]G)]^\@*-&L (. MD"-(8LDV95Z\+'*U,_1GD50(,TT=T YL7#^T!9XLH@7"S7 @Z5""[.$LF"A" MB*8-BO1R!OV+6Y5"ZN=Y-9O1-TE8T\__>I-V!0D[->M:)U$0X$\"7>')8+8% M.*F;A;*M-9JU5?"J\8];!:=](C;M([<\@TR; *9=N5?:3_C#_TG>0?OTR9[G M9]3"+ Q/_&E?S)V.%5@^9$AF3@Y?O("NH?-38"%%X"%Y3)3!\TB =RQ)OT3^ M+)D,$;<4 F29N9@1$ZDP39HI5@%@C\%HGW=TO[=L6J"2UELZONG?R_ M'^@F!!QV%[1ZS1_58%$U)P##"R>DT402#D=)CCC8 M W/N!DBL*23$J8]VCLUGT(<#5^!)(F(8(M@[DXB&((8H@/@PO<#WW$&(>_N3 MAD8D%YH84P"&R*FZQ+K%5<5 H2) ((R[I5LY9 R#"GP6.H&>#11"9OP"OYW^ M(9 KX]>02[0Q+N'@B!>\!XV3G$LX_^R+X;1W.!RY:C^(1F",^93'#'ST+L06RR.!752N MWF1!TUGZ;.(R#(;%6]$/"/V*>4#4C+M,$15-<<,5WM=S[L082^9,>6AE,)^ M-T&^&TG3,![(. 6G50R\EUXGV+8^'V!HJ^PB%\(+(VHG*<_ MKJW"A,22QL@66"SZCU+]]6("H\$P\;9F1L# HTLHT1/AN-(OMX'CA1QOM+'. MB(LC'.1C@S&3G7)!8Q1=FGD_>F^]==^MWIJ\EKL7VQI1=1K>^G2?@,G;LO K M.%AK3?SHO/G4Z.9NAXVN6\&TDF[C!=]>FW#RDF^/ X*.[Y*;WHB6V.73_$63+%5+6D#^)EJ.H1XB9W?W&L@]C@=0?NV/5N MMFG"XCC[/M>^Z$.@#N(B7.RNZ ;BWQB**86:=N>*@*;+I@;LI51",H+&%0G" M7C_XP4]\*O@G+D[*2P MG66T$L)Y2<'OQMBH0AMXG#,#CH+^'%Q\"/8?QV]'(TZPFDO3"]'T0J["65)# M:S[C$P1YK%186@E<^A"-W*$P>!-C4-->C++>:;HY/B-KE!7,P;8[C8[-([I^ M86CTOX[M=J.K32>GYZF%%HQ%+S?OG&;HZ2^&TSO).9D' CK!%US7VK#KC2PQ@D^2V4"!UTM97IH"KG94I):4[W?' M/,KED&BZ/R**8NKM^?I.(*KHMGPBO(S M&3>('X#GC^&!!X\'"30_\F'L\]D%?)KCG/+G.( 'AXK0Q>1)$BHYF+2#R$_? M@4\40GU/]P_'[HS+G=2RR-A"7YR,AL<&7+@?#>N<."&?QY0H/:F%;%!S?]7& M[A!\[?>*.<&9"MU?HF*$IVT.K/.(WZHOH@8.!1@IA>JQ!Q9/) F!]^2D"K1, M@"[@=2?D[F*2QG,$1#QS22[1O-%XE J?\JA&5Z;VPTX< [T:?>$!#-2QCU7* M-,!Q-$(+"$.I+)[QD_6 NVOJ!_Y,!-\ZXQ"B:G_S IZ+RZ]C_SF/#EP_J MU)PW>?QYU.ASG@9Z1CG%UP>9 MV4Q+PYECS)WC]*+DB#8:KML7[XE24VIZ442AG*-XGA/%&6TQA@Y^Q[AA:@1/ MXKF8Y<8'IR.TB51Q_OP>!JBDB@MGFKO! MD,\ )26B#3T2L7.QBQP=CS)_X=7XT,=/.*+&0:,(G46#%5IY482J7Y M:'9Z.J/D,3*M^0G+6> 8U<&3N@=J\\5F#$#Y.GS:6X#A+%6(66I''#0%^80O MJO"A@A&<5D5OBN<5AD)3G,>A$UL-8)L4!&5(X%&A4EDJ(2&E$FV8&5$!'E'G M%J:H0=262?M.%W#Q$A\IH>3T2HTL_'A?Q)T+7BG$DK!A&5\X%@-8_A1$W%PO MN(!DCW*=401H.\3'Q/?1A,<*5&>R)VX6#;93H9&?,@?%2[ N[I3XW+28_Y$2%.I9TUEBTW@E@0*4I67V"."X (\30BCPN!. MI[ZD2W#KH?ZU,HMHL3;MUF%.L#$V115U.U@<@ ,7PYV>E72MYE*>"V9GPQYQ ML\C288;D6ZQ^>SSP6#!%*3,"^Z6G*'4W.47IL#U+35':GS[X;G.;:'M2]+_& M9O.<]L;_6O;=6C0N_?$%DC@:KWY=.*$8Z/] MMZW]&XV=TOY(-/#!:0S(NJ:Z[S8J.0:H*A)I/W1]2B+=!LZ0Y>6SC)C:NIAJ M[I:8XMEV_LUK14?K"JNV7:]O!U-O1\357AI0YR+'#F1G!-36!51KIP24I)W% M^O'=9CN;M#,B:;\M* K&R5HS$^&MBFQJ[Y1L2AA/1%%K=PDV.F96IC&;DC)* M-@/P,7% AS,L33-2:NM2ZID['EY82DDRNIH W8F0%%'2VEUNAUN:W+(CPFJ/ M#2IC2%5$1'5V2D01\5SXWD WJ-;L\FK8G<-LGY<13_MM2_5DK'SF+$R@?%,B MZFVAC'JY5L47=/;T#P1-77&26CMDWFE7)F3^KEJB:B\MJ5ZJ]\R(JNV+JI74TA0VE_6%E6MZA0C5$Q4[:55E8RB:P6'1F9M7V;M5K5T5FP]*:!^ MU#5RRIA44DY]R8,+6!@AM74AU:SOE)"2='3K_'JZ-=6T6\?&FC+6E":E^I'U M5M4DT"PF[ZZ&.&COC*S:OJQZN0+T9W<"M;\@5:TIH0A-ZMZXY*L]+J+!=YNE;+'^!HRB)KHZ M4QQX\A^YN)$+/,5J$QK#6[ 6"5P(6Q'OSCQDH_G$PHO#Y%26F1.!YXTPOP+! M$O^(8)3^U!U8?>:QD1LI?,#T4F<6:',9::L](VB:( M3:<^29B9[VP-VI+#-/(1@,B]P*$X$_X_C ]PR$.X3B*"X\2(QM&'<*58Y1#& MRZ6/HX2)CGJ.2.$[B"%Y1D+Y&\ID'*+E#=DH_DL:&4FY=>&5$T27HQQ#J !2 M\K@04O(18W;+H4N2 5L-<,EXP;_SH:9O-N4!OHAO]]+H.IG[@]C%V2;_?--< MK9BV&Z?9G*.;MP%)Y_=C_],9R,)X_'&EEO8'2NBEDZ-?S$7A\1A#O[M!OW^2 M7<:&%:7A'HAOYXY5='6GTGRIZ/I^<*/JFSNJA!Q0P5FCK7?B_B\I05_=GFU= M U5+M;QU/3XG+[]>XV6.H2K9GPUFQ#OM;69_S@H#CB^+L?KJ)(BY_RN^?U5$ MTP82T]4HT#G)S;/L16JZ2BGG%:GDP^<=C/3OL^6AU<^+[\Y??G""O@==+"GD M6B>0,MEI_I!)4?QVW<%*A_9QNY+P1Z^%6RI7H*88I"C%L'U^2 UK%F1><'L9 M6!(1'!Z*P$C$FZ0$Z"3X P=POQ_. W0=WGQJ'![4TS4+%>"%JNCR#;@9U=#E MMZH2XA7J[^I*I'R5?;1%E1T3PF-TK<..2:0RX*'%^A*G_U33*%AL%Q57SY:AD&X-6W[-;Q=KSZO*2L ML1?VWEXHR2XO92^TZD7VPG;,A74XI2HVQ.L-!*@.L^+6!F-+5$;(/8LMT6H\ MKRVQ-ZV\$-,)J_0DSQHIK_!?5TLT!/'Q\<&SU=05__-55-F/N;^[^& MJIM7;:#'+6VF$-#Q9CF$WI7A^D]0SLPU0_W(4#[D:-LT<\HN>;#6UV:LV ML'D$?"^"W@9F+=9NG4W$P EO=YDJ(L);=S9FRZYWMS,<\Y\Z"*MSP*?;R4P"]]2/.T[0C=CHQ$;1(B$ MF$8X2Z"I(0J:FT5!\P<$[4S@C$6<^=^.-W>"A<59LW7 61/62RB]/E^<@'B# M10T+^=SS([H"-WX#)O@'<"H3/PPRBT0N<>/D3P M."&*,B_NL0$\')X"U[G>$'R<" X33^P!7X^?4C2'9\#C MYQ,.AREV"/C5>O#G$Y0(<$V?,8]D0_IH(^QR&HZJK M"89&*DTCK2K0B)&6YO[F_J_]_GN4PU.H>5N=F22"CWN1ORO(RW6J!6S1ZN:' M7U,!BF>><*3=)92!#4$?ZQ:"M.VCPXH,:ZM0SX>A5W:K9C*6[M"Y5V[ M?;2=F5RFV63[)3$7++*8$WB88#!ZM%(2IEVOBAX%(CFG<6WK)CG;;SZUNP;3 MR1!Z/J'G-2EO194^F="I?KC9W$ZYUH[HTU==8OK%G5"-CM2I6#-DA6,G,%YJ MQ83.DCJIY]&N5RRXP4-_1!;^5%",O%10DI)"]=)2Z/SB[,VG^D&]744I9&B_ M K2?5R#W; JW"K3?K"3VMZFI31;\Q<5]LLHJ'/L/GN7T_7OVV$HZ&ID\G<%I M8T7?'?-8X$QX:=IPZGIN& 6\T M'*'LA'UOMW;,PFC(O@B_=NZ$?+'C-G6U- MV!UR*]2U:QY!+\9>LL[O%5=2F!1F.B,Y5N<=$>21\Y<7FY.Q#Y MLP_:;.>,X!1\O$Q\9(XM)3S3$F3E*7[L?WI;( _:) W>);/]RU?OS"-_PZL_ MZYU?6W_TOOTXM;Z?]FY^7)]^/[VXO;%RE\QUA1R%K9U94FV\9@W1NSFQ;OT9 M<&'!L7>;=:X&WB+?6<1XUG?F(-NA7'^'H[%AP]QPC&7-^LCML0L:(AB,%Z*^ M&13$'"\)K2F_'C1'I%_ BXA!D0#CS?D-^RQZP"ID)PSGTQFO4.XC#OWLM\^L"[3?Z,R9O$CK4T\ M<.8@)[LS!]^%UTO/0_PF*%QW0'/)QZ+W$8O,)Z[3=R=NM,A?N=^/'"HE#\BX&(%IYF@'#\<'WR4-.EGH]H=BV!S2.K!Z*"& 1-R01 +V M #6H!UB82\PDF<\0X6(GU!LT#+S@![8_9$SJP\D^;R,TD>!&Y[ MZ,*BG6#)IF>.RLZY17QR9>XGSYS.LVSSDU@$ZJ6I/V03_N"'L3L86PX(..P$ M!)$Z0/&B:=!8K]H6<\D1Y8X6"#1OJTCGI<]T-PBKM9RP=.L#=SYAB>&Q MZ28_ R=4^OJZ\6/[ZMKU9>V=*7V!%Y2/,RR:O*YA>*<>X/JN[%_ MG_HE\?-8^<)7O:^GM<_7I[U_U7IGMZ?7X"].'IQ%* OAD0X]EMBK#]:8B?8U M["L3":^_U>E_>;DP\=&;WW)/Z?$H<7G.:/;RY-OKO=3V]HX'E)VSRB* MDR VG?HD86:^LYV HR\LTXA)2Q-_OY=2P')UUXU+9Q*N28DP8=B!'@L%^$K* M7:/;/EH]"DU5["KP:7.U$Z/"DG=T!_/G.#V!K$7#2 M6BT]#[CX["&4/#A&+D'JR/O](X0=PCL\@)X2>Y%KG^J[C5\">Q17QR^&M\3& M:-I[OO7P]1S16Q61NQ6"_MC_]-']]!$[@Q*28LB =(C6W@-IH@ODHJS"0WF(=+W:!Z0Q0:7X:=A"9,7 M#8TB[5:WA0N^-%2%P0STG\5YMUG:"4QIJIR!.UIR?ZELJ77(B77C,UV6QG2^V( M#,I*Z7[$FD52NZ(2!J> MP%LMEO;N,1;"#N+N*(9-B S^QI>>XMS/^'KI,H'#^N'GL]9AN];K-3_7VF=? MCFN]>O.XUCUJGC6/6J=G7PY;J1H"H)(B/K$N0!0YZN8.U[1[\ M.'CUPLW(VWF0 :I8$ZBB1_E/D(Y1?@'+2QSC:MR*+1-1HVZHZ%%4E!_6L7Z@ M6UU%NM*+G(QL-K*YZEQ511XR1+031,2#F@U#08:"GD1!34-!AH*>1$&M*E)0 MUA*L6)/RBVZ3").TV]L$TT(OE%J;DM'7S5'+!D4+O*M\5O^3>9XYN'U]GCFX M'7V>.;@7?U[E;)(T$-G+;LRV[) X&;VT" /+6AJ-#W&Q2K&!\M) $QMZYG+$ MB:(%-#8//?&VL/;BJ*@^9EE#O#SH%RIP6+\QOK,$:&*+-/'.,$)%&*&0#[I/ MYX.G%!TU-LQ*(_<7&];^PP)_Z?BS6N58:?.T;?AI77XZWBX_-0T_&7[:,7XJ M--2.ZMMEJ):Q]1YKZU7.8]UD%'U['NMYIGO(^*-5$G.%4JY1(.6^P#/N"33N M7#4X7KOA3Y)9\M2OX=!OX,S+B*OXAGP^_+I=#T?9.<';/GFCVG>'YHM:E-:@ M^1=W0\NRS5*;V)C"AE^>P"]Y[6);XI=2;J91,X9M*L V[>JP32EGI:[N$ZZ4P0FO',-;.G8D,MKT-T@PQ5O8:VRMMZE?-8 M34.;$7/;%W-%4JZ;U[8KI5QE&]JZAY631$:U[P[-YS5Q/H'F34.;X9=7S2]Y M#:!;XI>--K09-6/8Y@EL4S0VT#2T[49#F]Y5MMF6MJU,[CL9.]X="ZWL*&XQ M\[3LM-V5LU%Q8"+.%L?'%-PN&@>,\5M.X:-Q:#$/!S$^=A[D S 4#EKF8PE? M^V3 ']J(>9("\+'O#> J.H3TX,!FI]TZK+=3LP%-9Z3IOC%%RULM6K[ETD]6 MH%9J;=^Y.#Y%<5S5)6YI-(4I_2ZW!J$'NJUMEGZ+ =XX3KC/X.\>C@\&:V<& M]_2')I*]= 'MBKE;>?@ATMW27*=X3#DJ?/*85J3,U-3V8OM59>MV00#N1Y'I^11,]PC%'! 5@PVV!C30?K"PHL#QP@EW MUISA7_,P0D(.]T,0EK432RYMXR*R] L4ECYT#]^4\5 K+567"-6OCNM]\\/P MW!M,YF"YGGN7T9@%)_YT%K Q@W5B1&[@3]>5O&AG5DKL+C%&3>5$E3QD\Z!U M'E0YJMT/XT'SF)@WW'M?*:US6Z!SA_X<@Z8II5M!GZK\X@L-AKRFEEVP$E[( M]]HV]']:Y;G0L[P=.D7]QP,/&1ZO+S*H>Y>1615N'LIS(J11F6%+W4ZW_/27K$ M61L]P5&@&B-_IBFJ+%W*O,D279,YVQ1MIDESY5%_[(-OLCRY=TC9O'=6?C W MNWQ*.&UV^5\O+[_\>?[MF]6[^&*=7]SV+KZ>?_YV:O5N;DYO;W(7KC-=@N>2 M+/>:,\]_,FOLW)?-!?LSTA/>'9S3'<4GK(>Q.QA;#J9Y)Z%/R>J S?R OH6Z M(WQOG4[8( I\#V3 +0LCVSKU[EWX'>_@3.!O@['G8_T^O*,#ILU5X ]8&"8^ M.+"D+*"ON$H:6 Z) PMT(SZ\+ZRD<,SPK[@PS'4'+)Q/(IE.=^+^@?!@RR=0 M"3( _OGH?OJ(Z<)$JA!4K,\M@_=PF" R)Z['/EAO/LG#^/@;7@.L!59P)X]W@^4)SJY6)P#Y1^]O!F,VG$_8 MY4AL];DGCX6* ?+U8F>_ZPWV*,!2K41?S?IOQYL[P<)2B>&]]%LKZ8\6^IE' M]8+*_6('4)> #;_,,?!T1;'3=6--()>..T8N5=P ,HG^B@DL MD^CG\J]52OZ5$VMGG,!.!'W=QN0ED^[K";D8T*/9KIJHV\WD^GZ89+&_EZX# MW@*N8,37 6H60_ ME+08=4^D(,>,AUJ;2$]"R_RM3O_+4T#BHS>_Y9[2[U_R3PD)]'G.Z/;RY)OK M_=2V-DX8E]TSHO,$L>G4)PDS\YVM)%14LNK!">%XIK/ #=E09C]XP@'3'T[T M^*2%5YSHR&#IOZ?+=C:YD4[\Y^8V6LWZZ?&7D\^UDR^]TUK[N-NI'1\>G=5. MCMM?&D?M+T=?$'XDD?@0S;)S-NQ%F!WYW.ETVNW/M=;IX6&M?=;Z7/O<[#9J MO5[[]/CTN'-V>MIY^61)]W#SR1*1)=EV-^9+ER]NXOY;;[FL7"^EDF#)"@QS MV*_QL'75L^'S)EO9B+!70-6[VC6>;7;>2H^SH9%JTTBK"C2BI&7%LD$O6 73 MV>JDLU0)9.[YOW0,=%N5+CG//:Q80OJPH)'B)G(BZFR0Z>@;4?M*N>CX8/%< M'Y./7C?W?&C7FTL2,EM-.1M*K@(E%\VYJ1@EM^QVJY*$7!7MF$X8OJH\X?(> M@%>H'%<]JFI2)&]*4$E]J!^K?JJ;4(UVMW%418%BR'@[9%PTG,>0\<[JQ0UX MC=O3BWG-;Z]0(ZY3"E@%B5-ZW86"*6_(43G]*LACTR*I [;Z$ECV#1?0-%87 MT!@F>0U,TBB:D5-5)CG:'2:IBC9_U5[NK8_>[9WJEGY]>OS)%:]5%%CK%;HV M\OHDMUWH6KWZ5D/[KY'V"Z85;:U'N(*TS[6N*.:N3AGW;J".Q*6@%J\%?3[X M$:R2'+E IJPV<>]9'L*, 28I#]REE^_*C?V&^UJJFI);@U2B MU6ATFP:II#JM:V5:TBH6\6\4#'\KMD)6B*E3:BD!V?)$:Z5KMXX-H,ESA E> M9_>L 30I])N#] @'OL[6"W<,GF=#VZPIM=S<9VCY;'=9NK"F>CNU.UXBGJAM')JYM MY%9IYBF.1!\_0R2ZP%#: .YVO54Y>64BSA405;TISM?[S_X83R:Y1B*M67\& MD:833Q9<=4WCZO!X2=^3R9@94\MDS$S&;(67V5R[<^I%0EF-([N^;6?1Y,=> M(#]VGLEQ/3 :73SQ!T[$AE:4'F&L!AUO JE=7+;=/)B 17=B)BT%C9Z&4S\[ M;G9ZK>/:R>=CN.:PW:@=-SZ?U7KP_=->X^CPJ'FT;TFN;4(3OZPEL4*-OOR# MMHY(6SFHV27 ZX8.]HP.EF.R;_R$LNZ6D8BOEQ-V&*.[O3E&60W6;M85\5!X%]QN*NZ,?D5$:D\/).7@H3/B5P]6ZEWQVX=+D$3K5;=0U4( MT1#_4;.@C7Z7B+^U'!JH6K1?.>6\'XGT,ACT51,51CP=-0L&2K\DKO<+2JJC MXZJUG%::( T3'#7S9A9M -S^19F@O0M,4#EEO1]5(\7 ^%63%J;Z[9GAP)L% M3=4O P?^DEYYP^YL&V1B#INO9AW#^J[;\=,U$YC[39M1FC- O_>'<('\R :LP"H(7+< MB>7T_7E$U=Y9Y",GQ$;@%Z_W?D^75:3(NTS!=JK(N]OX7.^U6MW:Y_I9J]8^ M.VO4>JV3>JUUU*AW6L?M+QU@U$X#M6='D] J.LHN@QO+<3O-<;#.;3^83Z-*M+XQHR MAZ%T0^EKD=$%BRI*X$;'F/:+]=LOVIUMME^<%:)=O]^;'EGS(/,@\R#SH&KK MISVH-E#_/Z8UG,Q#V%F&Z#,<2#(-:5IDK#"4>MO';< M2G#",YNW]F%])[ITJT*GAC>.6D6MFUOEC2= A-N=XRU/T-U18W;_ KN<;/"96M\3 N_%'T8,3 M,&/A;9N'BU3;LU7(^-/9/&*!//74!5L,XC6/3-2BXL^L&E,\5RW&RS+%\P;W M#)M4_IG5LO],<,\$]Y86'0;.D)$DVPOKST >D]I\KN(4HIX+()YMYGX;[2WK M0X,J;E@LPV+/55OQ;"SVO$:H83K#=-MANDK9N0;K?J>,WP\2ZWY4B(NR%Z9P M=67!"LV:AZ]="IO^I1+5=;O9WHF1FU6A*$/%1X<%!1M5,?%:-NRLH>MJ/[-J M=%U0@;&-EI4CN][="=F\U!PL%:I\1KI[6;/OW!NR8N/K?869;4\8O!H@%A4^ M$T,'A@X,'6R?#DP,I1H)1/CXYWY$3?8HT%IDY1<5H\4FWB,R'$1!Y8:G%M[] M&:<5'[6VW'Y@4AQ[RGFO)<5AJ'"7J;!(_A5=1_,(&TS M##@M* LJ[1XW#)@RE,\EW=H-^_C(C-(VW+/]Q1=R3T$1G4F2&DXRG%2:DPK0 MCK8VE+[9M;N-W=5"'W=C*'WNY',SQ=Q,,=_@@\P4\W6G.WYA PJ*R$'F+3/( MW#"3&3'[A$'F_>"W3Y::Z4J_57>$JJ&LG: L,Z;;4/I^4#J.Z=XI";K7F1 S MA+I*AIMYD'F0>9!Y4+7UT_Z5L)HAU+L]/+23UTO9JC6:51@>^I3.XD;';M>/ M=J%[S;!&15DCKQVS*JSQO+#8QW:G:WC%\,KZO)(WL+TJO++^#.J.?61&4%<^ M4E,-2]B,H-X-2977?K6.I*K4".JFW34CJ*O^S*IQ0AX >"4XX;E'4+<;QKBM M^#.KQAMY35J5X(VGC*!N'^TVG(\)ZV[*F#4CJ'= 1N7U1ZTOH\P(:J.@=XCX M\]J;MD?\9@2U80RU, M\5Q5&&;XM&&3'6<38_N9L-X:Y89F^/3^80[6MSRG8F\5 MW\Y2<4&I1A5,/"ST;]J=>LO0=;6?63&Z[A947VRA6:5K-XY-LXH)A2ZS!DO, MPC;8>.9!YD'F0?OYH,KII3V(4ICQSGL2RBRRHXO*O5[%>,^NW=JV:6YR"'O* M>*\EAV"H<)>IL$C\%X'J&/&_=<:KG%F\'^$:,]S9#-5,RLF"2K8M#G=N'MN- M;7?HF9&TAGM6<4]!D9I)0AI.,IQ4FI,*<(2V-MRYT;$/CSL[RSL?=V:X,Z,# M8W)Q0_=>#E^]^GIV>UTXWTYN>KW^]W@RLG:'\:@6^ ^Q09_Z#$= 6U=?+WY\ M7SU%+V-MRP-.[0F\I*0.JQ83RO*@2:-#49-:?'*P2/4RVB^)G\?*:;KJ?3VM M?;X^[?VKUCN[/;U^;SF3!V<12N9$=\!CB;WZ8(T9'V?=1(H2KM#?ZO2_/"]) M?/3FM]Q3^OU+_BDAB3[/&=U>GGQSO9_:UG)">LR>$:4GB$VG/DF8F>\\VE=[ M4M)"#/G^DUEWS&.!,YDL+(<; LSRY\&*VDO+!Q?:BN!T XN%$8@SG.@Y#]EH M/K'PFA .-X0_@02&;X& B8#"01I[UL/8'8SICPS$@3]U!U8?EC!R\:XC^B#[ M."> K_^:L0$^)O+A"A3DX7S*AK;E!_@8!_8O<)#:8-$>P^>[(/+7 AQ-\ M/"Q2OB2)(&O*HK$_M :.Y_D1WC1@$Q=DU@)D-%PPA?L,#ZR>M[#".2RZ^"X/ M_GPRQ)L\XYL7O?A!$;-? "L2N^.=\3RS>SIV[N%G>+> A>YP#B[[O3.9LX-8 M:&Y(-F^%\F]AMT?^9.(_@.*S2%%9M"V@NB-Q2HJP@3YP?Q*GCJ?BA7@38 $' M#E8"J>AD1L =_&06S E$Y'AF@/M6OU!OPC?FR1 M:90TAFX&8S:<3Y@_*G PSN;1/&"Z;W'*-^P6M_H6'OEYX@]^ON$&6K/3;ATV MP'!B8$/-4+P'^TA7=^M]7:=U'F%6DDEQOR#PRF-(F5*?%HW)">>B6TMX%)]4!-+8Y;Q5) MW'H;L*F#IQ:\V],(91F/KU.Q M:\]@(EKM:-B62%U;6DC4N0=>C>_0_(['71 MP.Q6MVVJ7$TUT7)I=&@DT,Y(H+S6D!>00!?P@-L'-KEGW^%IXR?,#.KL1)=( MY83/?N1L@7@[1OCLBO YSNO?>0'A@];.[8._]@R:PZ.=F,54.9FS-P;/D9$Y M.R-S\B8DOY3,&0>,K2UUZEUCZ1A+IT#J=(W4V1FID]=A\4)2Y\R?KQO;.3YL M[IS(696LCY,$Z?R$SE"E7Z&(*7AJ(N^IF*3ER=@X$1OG6I^>R[AF]\R;L[/ MGY[ U7AV?[K16$X5R,]3M'/S%")-P9/A*D-1E+%(T0,ES#-)A#@+HB<,"M1% MY,\TX9VE.Y$ 6R9_,PFG%.VE3W%E_NEC_]/;@GP8KTIX!Z?:_Y25R]GE4P)G ML\N_/OWC].+'J75V??G=.KF\N+WNG=S>6'^>W_YNG?RXN;W\?GI]D[M^G>$2 M_)9DMSU+M(;6+/#OW2&SD#E06%*].)>WJ &P<7<;W;=VIW]&0O@(UA7R.ZFP-/TZ#OFWP7.; PB*V!W<.'F M<^Y/%IQ?W-"YNX/ETYM?CH0@+RNE*I+L[OQ"_S.''S--YNR M]U_:DM]ZBSTX,4 JWC_?=%:7UVVWFVQS3D_>!B0=(5!LY&=;/+%@G0)M#S_V M@]\^6=^=8#"V6@U[B59^D9* O$:ODHZSX:V7YZVFX:U'\185EU21?0S][ K] MM"I)/WL=MY2V9:>]S<(U((^/[J?K'%<'W9OW'W]S/VV.5A-O-8ZHN(;=;IEI<88CUN>(;@Y'M&*. M:.T21[2((X[JIE:^ZL[0]I3VY>GWW\Z!WN\")_+W1'4;R#64=,=KZ_Y+-HU) M)NQYPR]N& 5N?PZ_5DO\(>K:EJ6?@3LTO)?BO6Z]OK:5L3N\UZC;S<;ASC)? MY>R1S081]D0<&7"G'.G4*&495$7.-(_M;K-B2MY IAFN2G-5LY3.KPI7M1KV M<6-W(3TKI[WW(YJ02:?JQ:(FFVH>:TYSYQY;.5&Z']G4VS'#/X.I$T;[$99] M!?FC;KU=+JIZQ?7B97##@GMWP/C@"G[DMPB7Y]V)KY0:8K%!N]#N;!OIW?A5 M.\TAA^5BG[O)(>TWGP[M;G,G:A JI]CWPT>2BAUG#D^W')R9F_U^,YR0UZYX"-5=R6Y 3,(NP<[4065O1^^^ V; MND#X2-1^L#\>^<[*J;PBSK):.W'6XAOP '0Y*NAO@/#JV,WN3@BOJE"KX9!N M/:_XKZPFWSD.Z=J-^D[8NI53[_OAD?_A#IEO <' W^Z,9J^PW&KD%4Z6U>QT MS.?\E*LEH)IV8]NU%D:%[QHKY%7IE57A56:%3GO+<])W5%?OARM^-ED@"-PL M\/L%?X=GWO"%('7[PM_SP"J4%UU/*WN+#KI"0HOD7K2/CE5?\F55CA*=4MVV-$4;N+S:L_8<%?IH':KM M_Y53TOOAB@O2_BR( ;Y$BF #.$SY Q8B'FL.VSEA.A^Y$L3)?G[$8I]#5@(S7)( MB_\^_=^Y&RUNV& >N)'+PL^+,T>GW85 MA57;;G2-5J_X,ZO&&'F5@H]7Y-5FC);=:.T$8U1.B>^'N]Z;PV;ZD7O/K+>N M)#OK=,(&0-(#ZP\V=@<3%KXS*K[*DBROU//Q*CZFA:K)L./#G6C$K IY&I;H M-O,J Q^OW*O*$DW[\-BH=>.;+U/KW]P1LVX&+O,&S/0K55I0E1Q\O$)0X8'+ M\ZZ6J.H<[D00L2KD:5BBVRPY^7AG6:)A'S9V@BDJI[WWPRG_PD;,"]EO#@O\ M<.8,F-'@5197)<<7KQ!7XM![\LRK);):=K-E.I K_LR*,4:KY&SAG6:,IMW= M#<:HG"[?#T]J\2MBNQP MW-ER/_V.JNO]<+TO#8+(7@$9M)ZG.H[(YOM\$KF\"*AB <>FW=PV?IA!$3', MEV&^YZG JSCSM>Q&MV(=_KN,)++9L,&>B".#>9 CG"ZCUSZO8J8<$9/ MR'OJQZ%[_XD6R+_+OX=_I)\2%Y03STG2 7H9,"09/,=K-_SYQ0T'$S^8Z6*3B3@I]3OF MJ^3O*0*IUR7_NMZ0>72(OY0Y\U$_J2*K*_)GF@V4)<16IS"<\H_4R?TC18SI M$TR$4$0$11"'""OV/[W]R*;ZP]Y;K@<&NHL?'WW\C4T_O;/RX52RRW?FD;_A MY7_O_??EM77RX^;V\OOI]4WN2G6V2G!5DJER%YU9L[;*<=C0/&Z,RM*7PT#BT&U#XLNL0")VXPMD#P6LC%MD67 M?P16\N0EM9 -:NZOVM@= NN\5ZKE^,TGWX/'X7<_60.A#2QG, O(H+'@N"W MBI13N^10MXP0^;SXS+S!& &#>.@;5$THM-2%[ G+N^QV,>.@F%)W9;XCKOWN M_.4'\DLAGV/-?CGAN0=^,(A#+X(?!WXP\^%2-LRXP%<@X%;*PBL6X!^<.]90 M^K+6+*TPFV\^-;+3+?]N^2/+GP>XLQ0BP/59 =^< ^MV[(;R-^O!":U9 +<+ M@(:M.^8Q>AL$8\([\+XDWP/1C\-$@,OO\,T/BNCIPN?T1]C0BBC"-%4LOT&C M_G=QAP"(.&!%KV,--\06!YPM-L2%K4=P8?OPR5Q8LG?#<.%2+LQ6EQHN? &V M..!<463.;L0&0*/9&DR<$([_ZNOG?^5;FUF/3OR%7$?ZD[1N$_<[N[U6-]0] M3B12%GRPM(O'C>^$S\@T6:>NDMA/V1[IF MM<9131EMTHM(_*S_.%9V]E7OZVGM\_5I[U^UWMGMZ368HI,'9Q%*+QAM)(\E MWOV#-69\(YOHH(F8Y=_J]+^\<*;XZ,UO>9O^^Y?\3XXMO[T\^>9Z/^.= MBMVM,GNE_?3"#MNY!SP=^<%BE:-V9!RUYW/4NM5WU,XO_CB]N+V\/C\U3MH2 M)TWRC@NW'[/)T'*B1]B8W.;#R:9%UWQA [)RE%+DESTPT-$#?PIV1 @Z%;0U M:N.1/YGX#\!I[[>\,^GC>;*8NAF,V7 ^896+K&ZNR)(R M:Y6@$A)]Y'KT""6YDEJ=.%,JC&[][ZMTZ2,BE1FIF#0Q.BTNTJ1LU"4EBMS^GC22/_RNJW.U= M4@6$MR&;2Q6Q<=:?C6-_;6>W[J_KAWXSN&&SNB7G;][>M57/.ERE28PZ:J)LI1-THU^HY$G6KU&T> M1*\TY73I:92C_NFX/S239MD;S#L-#:IN%OT:^=)ZL=)$=%_9MQS9NQ PW5(S M[W2XDU6:!TO'[1?KR9W3<:W4:A3U[>,U<8ZS;0]-CW^TAI0DA;6#VR[9RJ%:X MH(JOJ1I]=[;5IGG0=[=P1@MG=)62O31MTQN#9GUTG.%I:-6B\)MD6/?%GJVD MG2](.KOP")JE=E>Q\LFB1T+!*NWJBYWGW;)*$]N)-#O5@V45Y93]:7C4#XZO M6YH9922>AKXO:L!39%KMQ>H?Q-CV%=V-1LX=$8L^"06/K..1^HOU_O8\4J^6 MJIVBZ\'Q=#WXBFTPV,T4"_D J%^9[C$O/2>]N]\R&I$6OK9R1OF*F2ZOF,&\ MQ1B^B2Z5*)?YVN_=\TJ9I>T1NT@^.9WJF!Y6N;(GTPD\:ZX-3<\(L%D,ID=\ M<_S,TM%ZB=>-SIBL8$7Q2@6I%O$6/@1_<8>Z;3!M9OIC*H!Y#$S^#?S>NS_7 M'IPI<'16(5:SSJM,M3\9?S:MXHQ&IH$$,=-=-H8W8-H(>,^B_G@:UNP8P$8Z MK,+^"LPI1G!!:0#O8MUBV< M6!:QM".%@MRY/]9]C?VB&$*#Q?PPI; M_!'\E\=Q)FRJC9K8,K?Y%U:@W7ECQ_7+/G,GXDO#\7R/@/CJM?,;U351U3M? MQF7>E!DX!-": \"QL$G'K6(ID_=A(U+>/[:+* MXUD5% \H)+5K+A_[)!]#&9BLK,BEH$)8' 6'[(Y#BCJHEY;1Y<,)!8TH32,- M%6BDD);%\XOG'_OS0RY7[#CR:&M);Q;B$AB"R K:O=HY2UZU=BJ@G2K M::.@G]N#/1GVQI#'MBE"K17GAKDF,1:$J@*AI@T!?FY;\]T0:@L(M;HB/2=? M0E5%PRUFUQY5GLU]6F2]4&M*28O:9GVFLZ4%(?H!\/Q2M;:B#JY0:B=/IFEC M<9^KU(Z;3#..SK.32X[P//TAWN!1,ST- UN(*,K[Y)A&$M,'3N#'S\IU#_M# M;GZ ^R'1=GF?1Z[BB%,/6:4XYLS?G-MCP.*LFF_S*_N1&I^[;**;=A2Y0&O/ MT]Z:MC9GNNN]RS+WZGO4H]7<]-DS$B/^0V"E7O[7 -1),)%M^[DB,VW?7W#- M[B3\Z2]4;F^2BC/9K1\G)7P8!BXBY\VG2FM1-:P 7_MU)A+C4E1>/N64DU-I:6+2;*QJ M%<)B3T9'KL*B70B+W(7%UG-B-A46:$T\S)RM940C9;9V(2-.QJ X*V1$[C(B M;>S.[F4$5E!O+26JW4)*G+ ET2FD1.Y28NOA.<^1$I=.L&ULHGW6*D3$B1H2 M#V/F,GWD,_<(!<4V?9M5D">[:-?F:";F+'66AZ[/;,VTSADS9NZN7"Y[LM6,].NHEKFC^_Q 0!+>)1L%'CTH.,NHSYQ0'G]CY=".R/M[N:[IH/& M5ZZ+M^C4KGO:W[,&;IRE-3MX6:NI.Q2F-Z/O'NLA8'HQB/5_3IGM;7O U*PN M'R]16_7L-ZSOO$?1J[UAH[LL5DN)3NR5TV"VB\#%RL$]L1/-,_@K,%VXUV-8 ML&%1VG5LJ@%0D,TX<=%4 ^SC0/=XIA0%/0N 0T10T; I1/QGTXM-6A@%+LZD MW63B0B.:@@!$XFA4RL$=3X>@0_2H]1X!$!C6* %!>89K#C8;Z"![_4O1)88I MS+49ANIC;Z2-09"8/HZ.,&W#G$;S#1S;P]>%%PQOAL_.#$>'#^;T5(]9%G,Y M4 BB0YQ ,3$Y: TK&++80 =D:#[G0<-D>:;Y*'B1&O3IU'5^ KOXP A:)L]G MQ*/_\SGP0+F!ZQ7AAZJEH[?E!=/_$:U;;!^7"'0+JQ;IRC_E9GOV\(:V>H\[ ME776H2"Y_RN *R\=QU^4)SV7Z3B04+?ZGH\E02Z",V:053>6&U??+M]\:M5* MG=K9LG3T: ?:B#&?PQ_K*0%XB<@G(JS__2X;HAG1N#U"%+:9.$'HV38\AAXK M WO;3G=L+\?T.,C,"6S%1P[W%[B:?^4Q*2=0V^IBU B834#;+L$9.!'E1I/5O%940K]HBD>@]]HA? M_^-OG7KM[%-_W=/]-8HA027L(#T MK!I ,V;=KX9X@A[CY'AE?X%K='N>;)^2%>?%A]Z,Y"IODO20WD.%X ':9ZF_ M09E^B7&3OCM>$B]V*)R4EM.T0[SNE:? TD@Y/*Q$C 1P]V +&BQL.D."_JY) M'HQ-/'I( J4?H DJ3(&'^93=C'JNBZV$$(3<8@"7:.( %AF?I+@CQCC+8HQ& M>P/&,'27/F7($\<6 DB8!FPRM9PYX\2(Y"N DLI%X XY:"0/=#$HCP/K4/@G M+6J\=R+9-Y-O[TB]_ONOW?B_W+A_Z=Q_ ))WIN:#9C*'L M!(#'C .RCL<'XHCP;U7Z)^WT4/STYGT:T'^[2 !5>S3*T_;O6 #']N<6(X7N"L:)C3V.V97MF.(C4+6UL[<#>UY+2FU?O/8?[N1?_S0_K^/L;&57^,3ZO^N'X4[VN[T4KX\L\^J_O*?!#! M9!Z<@[UH^HOG=#''[4^FC74P6$S/"\ NL:);#;H5^[KPV*U!35! NTX=SQ3' M7'+*KK"=A@Z #A)Q,$H;$91L:6'NN*)/#@\M=CPD?&AO>8(.-'GQHU8"\PN M$WQ O(ED(ER")I2GW<%J(*0P ^M\X=8+<:O#C:J!;M'<86_,P+#B\3S>-E9L M743N7$;A?RV MW;@+QO0Z:]Z"9_N\C,#ZYPUP1Z<4\PCOT SOBES7Z.]5+0;'+ < M^)X/YB>W.U/>?,BN:RYV*%-E1?=\TS0!#@4&_SY]?UYNB6I +P*3#X+DZCH'XG,HZ')F_H3K]+SO7BE6"[R_4GY<_?>U7M*]ZX#*KI'W[O\W-Q=>OC-[26MS?QG(, M\(J77&#Z>$8 IDN6S9_EL3D<,ON#K!0_:[_YU'A?[[ZO5S%+1*0!%$@_;J2? MO?G4?-^HON3L+*.CQW_X M"8\,@XOZ(#S_D7DC(A$;$R^O;,]W@S +^]KGRGZ3[.N%9)38F,,9^&$,YGVVQJ^ )^&RZ[8U,9@U+VG6O M,.2.W)#KU#"C_WW]K/#93@GK=OU)N82!' M,:V\0:/T@KE.B[FZ.SAB*9CKF;:]1:U%RCIKTE6PH;:F!GR'KUUW/+\;#9!R;OTU>U7]^E-!VT MM=Z$]^S$AA[8?T7'YAQ?'?@%O[F7;6+"3N2\3?KU/_3)]-<'[;-N_]#>BC7% MEW(YWN:EA"U;-GF7>H>_BVP)BCV7Q=Y$O_'_<[#CA$L;HVW3?N UGOT.^/5F MNXOZF%27MB?[O6=L$]9V7KS;MQ$H2EH,QW1/>)D$^XET1,:./TD R)[SV(TQ MJW%BMY$6I:V5:]5RK946#1(4BA>%B\G>VB"SI!I,*-7K!V0->95C/V+W'WPV M=E>D*[ C(_;QWT3A)C<%"['M%6T;N]*6JBFZEGI8NNS)L9Y0= R9I<\!FD-7 MGU'S(OC=9]K;& 7B.] P@I#GD837@3\M:"?!GP+*.[FCY&^KHW1$L(K5*$".X0< MWWED)+5(CN-M(1(3PF5!"X?2A5IM+?RHC77$^B8G9 T@OY'YQ(16+U/G*J0& M?$G1'!?[7OG:@#W"TX!V<%-Q=4:O00VNL(W4LQ1ENQ1UKT*R]KCED00#:$F7 M^O1.3,\ST?BF'K2;O!S@SI\YXMVH*Y=W(N)XC<%RSZ8^UZ-UKD?K4>?O137J M+TMVT*QDMR )B&[)#V/3?;%BA:4X])+KE;1EXV-AO02OQ'Z3*RZI9X;\XQ,B AELH8 MLK7Q4!NYSF2-E$^;75$HV4](J-F 2XN-U30.<( :DA2, 7 L/ODJM M%,"51-M(5Z!#DBH!J60KM2!% M>[90CXOF+*$L[)HA'P; Z7A3>8PM3&'7FCY\PI:GZ2:+Z47#6G@?T,TP$#>( MDD_$;U;;FT HHGVLOK Z:8;-3(%:E_9P%O+A1GMNU#B5+8<\I!5Y2]".<-1[ MCE"([!(T:C>Q^IHUT;>56WUL:0J#/>&WM1HX*! M:R$DEQT?WOQV(-=.YQWL0QP-\1LP'(I*DQH,D PN#;43?7Z3$B)I),@!> .*$QR&Q8*]E>M[4"G"^!\[OL$R#;!(.+IS<.&7<.H'-632&\A&, M^KX.4H=B*ZD^*- T[^2-3O"4) 7N.: >@> D4#\.TLR\$&U@%#6TJ*^1*^^UMSJ^5H#7H\OS?C3IS1:4>W M>LFIO-E;!#'/R2:Z 3@14..N;:.=W+#'83\ (@H&_V4&V1'P /:3YLC0C)<1 MR@B7&?H4%F<\)K+"4*%!:KAE##9XH13A(F3,AH^D7H7J\A+1]9*(: J)P\F< MJ,V;Z5--EVMXI86?C>Q?' M$\>\\9OHUR&?TY7E;Z&"=H.I#X*&ME ".>XA"L0J-#Y"S$X-!1__&@2^9PY- ML'L8']8EYV'@."XPABSMO\&0)H>!U.J-4(S'ACX(:V?!#<$ES!$.,X/O31N' M3/'(';W%E]Q$N-Z,+#I608$T/X[9$3#2; M X@>\^$I7('Q+3R* ^@A2R5^ZW^^>KCH;3I8! PD)BRB+))).Z,30;)J!O"\A:)9I<^@Q(BJGV M-'$F)N^#-4&RQ?E!ELE0!]@DD'UX/> ;:XY6M)34\.4C')"LI1.F TOF_5++^T^!JH,FZ2,7Z2B'K ,Z4=_P3P.-WS3?)PR+\_";'T6@3^-D M8HT4#O-[Z]TMQ' S70S7R_5N_&/^-+DW,=QZ\ZF3FKZQA13N&4: $\J-55)X M:&8&;T./+!9Q?Y:8=IFEAY$M(<=X2&"' I"(&7R7[?P.G*:*R6J;"\_V\])9 M3D1XGE6:SQ*>6KCTVJR%),*('HA<*+]@ ^KEAR7#$Y'7#_&AL!H?ATH^/>!2 M)"R+(S^3A9YPQ%#(<@Q/5L4O-M#Y,\[^#F@*K>2.:!#M=0B7I!Q/&T-[?M'M M-9OG[7*OT3LK-\\;S?+GRVJSW.U7&]U.L]6][-<61M1&$>P>L)1QUCEK][H7 MC?+G?K5=;GYNM?#F6KG?.COO-SN?.XWSQL)8VV<,@M]LPFT-A]HJ.>#V!!M> M=/;RE.S.TD8-Z-+$RV$?X.XW_),ME&JGBU'Q_/&^R'TX=EGK]=<15'K),3/ MQFNJ)G'2TFQW+7&N[&_P_(<9LY[8-:4H;>E/-TNY-T8X4'&S3RLH5W'3/@EQ ML^N>AWN72COI>=A-BW[O7GBA??0P<[8VD3K-Y6ATT;_P(.PFA0V)@^D=E;ML MV;)W5$8#X\V%R[:YKK52M7:FEM0H6D#ET0*J9\'.^!DTTM-)MH#:YC2(4!C0YZ49MO,B.IHTH[;(J#CD=*3;@7\9#[[##2SE6,\L]/VR=[@ M1=+A6AO5%;Y0MC3??.J6FO64@F5^F!>#@QD_:915R0 _.ES(P$=#I#X^T'$? M A_^'S,!79..D$9H*XQEMH,]#(_]^%D0)JW#'1Y"/"S*\O#<V@A\2S1:/M8 MH5<[^]7#E'E>;^LR@YE/_%@U@1)OZC)L5F.XCH=9+;!5//W'9'QS-&(N3^SV M $J!J%5 ;J$2(VM>TOX*=!>V9\TQ>72L6R-J8 -_1EDTGCB/\01QB13BY%'Q M@.&[3'5SN$W+ F3/3'+(B&]L3@YII\')K^31+F4?Q\]ER MAU3\.5L>YM8JW93#7#P:Y/Q'*. 2$LN_LB"9X6SM$I+$7 C*/P39JP+-^IM/ MK92D>@[-)(\B0),T'U;:QG72*Y![YM2-+:3?_F#;3(-M<=*_ZJ1?"O)#/.47 MI^=Z1+[%"7IQ@EZ*/M@>S]J;I6XGYY!0$3-6^_"K M.&M76C9EY1OO7S;MYE2^@4&,:J=( E+=LBI.Y=594S7!=*:88'K9B7NM5.\V M"GE4&$JKY=%9(8]4ED=I#4%RET?89FU+B=2I%HY;81]ER*/.2 MTP0VDF[8,7Q;]Z_942M1J4AO5%<$J!'8/OGTQC/L?G2XR4I'F0<9/Q5=/)*- M&PP;OUD6]_'3V+3\2^Q7Q?M213VIHK93+R_2OC ]PW*\P,6&"H!YJ*;9T: O\ MQ!&8H29\9TK7+1*D..=?96$NG;(O$.4B'M<>NG\P]7--^WV:^];F/C*]TL\ M)IDKR5;'G#/2\]9TXZ.^0]?_D7O.6^ MISVZL#4:JH+-6^BW,N\*8L386)M:F*X9[Y5NN.8 KJ)VJZ, VU=ND$5:$\W& M12OE9 O8L(,LC;#A#=KAF=@.2/4\N\GDG^$74JWH C$K\@S M1:PX;F+RA.ERDN%]W4:ZZ?)$:FJBM@GI2M )K+2C6LECM1LS#=+DIY\ZCP< MHUC9:Q](;< P7]9YM &:E"P^"G"L@6C_YJUK?0]F558H_198XQLH0][W9\R0 M(.\1HE1VS$VJV%H!W@S[=C!99BGR(=(^AD^HQ'&U.:M* M.$2O$DC:Q_,-!_%OTY2VE.;0B>;:^0:?]W>.D0: Y-D&^')T<*;Q#".MCW(S MO=GR85SF,"H> F8=[M7H]I1M[ M2EB$@A5A)^J[T*VDT(@HV+VRP8EF]S+0^E5X770'4L'-Z%ZWF+=)U$KX;/#\ M5)?N9>,!&[7T8\)<,ZL*;E"!&QHIW) R2/.8N*&V7/:O #>HHJ87LVR.*IWP MGED6QC1%N/,(5?.ZI523/VFS45Y!&PO$]^SAM>[^8#Y\%D(D?W%4*.>"'T)^ M:.U''ZO*#TV>8* >/ZBBGO?@1>>GGOLV_,$8'3OBN=W4=8:!X0.!/#'+F5+C MK$)UJR*JVOM1W7 'P],'D%47$1TH(:TPNT-%855P1#X<<;8?Y:TP1Q3Z^Y3= MZR_,9JYN\1&QPXEIFT#:.HV_.UZUO4WEG@JR; <%>R#R.OLQ @1E@<3K)>A* M":&'$?;JBJX*ZM7W%8QW%(S7W8^MH3KC-1LKVBLIR'BJV"![B2$?BW7RX?[C*SA&-=!**F[K$GC$=EUYE%K5T6?L-"(^WVR[?OU^MSD5<6 M$BW !%Y2-LO0RE'?C"P<\ +HJ)&%; "Q\$?B\SBT^F][7_KESW?]WN_EWN5# M_^Z#IELS?>Y)C8*9+W^-@1$E>-G^6Q^9P MR.P/H4XZ Y'+; $Y7MJKC5QG0B]#5?7P)%JVHHD8!DYF2@)K9@*M9FX/[ "F ML;\"W9+=%E)ABMT5Q*/MY1U0/)S6PG)57MR]T4MVWGP:P:,3;UF)D\?#.-X] M((4 !%2SSX?(+<,N\.3&/UL@Y\KWQMBQL-:74R!B""^8.$-F M14/KHMKGI1)[&G=W!*7 2XV R$<@P2+DRA] %-RNBEZ9*G+3ZW^[1?UO44=8 MU(@5=80%C2A&(T4=X2G6$=Z9WH_R"!L$)*:"'F$*A7)'M&N"MEN5$(81L,A" MVVBDY(I0F0O6\2.=UWZ>IYN"E^ 8H G(8N8?TM0ED-1+AU(V<99Q=T5SX_UG M>OVB )&>,#]L541XA/R@3#+P+VJI[*-.>KPPGTQP-8?:W&36L-#.N4NCK4H* ME9!&?=';49+4MM((S[BJE:HRB=B%>LZ5(;:J*2P8XG3T\W$7%%2M^C M'_*<^0,;BZH4V318+YL&SY%-.)$K.6:@UL@:,]"NU)?F#"@@APH"SXW 7Z*+ M)'$GQSU,<6I4T@,R^ENL?3 )=5H H&HG1R8.5 HM7GENL*$6^82 MV^S,UA7)=E\P6]&[LGFU@C12>AP+].,%F+LA;ZXH7,@R>Z^^72)#MI8+7BG! M-!M4:4'Q95EU5*#J5AKU)5"5<$(,RD+SB5GS8AJ0G :$X'G" %ALO$Y26&!R M\:N+B ]\I-E1I.7&F2.>EML3H%Z=BHNUM44J;I&*6Z19[B_-$I@?C'!%Q^^ MY49RQ5,A$;2@8G6I6!I3BM*QL/$4W5U?EGW=XJF@"JRF2D!YX8!8:NDOE__W M[V;YXLMWN'A2=H>/97],98Y#9\+*AF4"I,L@M9S -9A7/O>\._%'>>Q/K#)6 M0U[Y;%)^JC^5$1AH'QUQ1K

M1T+61_N\!B@\;2!WLLT_HJ1I!BE+X21I"XG5;XM_=>J ME::2U*^*77"\!\WAOUW:PQ=>1U_HU=QESF8-9U];Q29#V%];W[V@IJ5Y%0HVKT( MH;=94JB[68/7M9H63[ZN*-'@@O(,N!SAX>SXL5B(^VW%2+/4K>?3##H%M.\4 MH*CC)MY,VMVF9>6K:5!)V:^J1!N5=C'7M'!5WWPZUVV#64>I0H]^XD.V0MZL M[5RG#,T;X/7O8_SDU M>6O7U_6-JY5Z/K5.Q803%97]JE/DA4SKS0Z1.R""ZQT>?3R)0^3-AS8H)B9W M,6T"$-Y,.;#;D]FPLT/I=K->JC8/9^#$L?".B^ XME./+PN!T.37TP?:PZ MN0(Q\V0. ]VB:Z^B35W(/8D;_N# I\M62#A:%A!JC-F-O3SB<66GB&V*5>D_ M8D]W*"0]$,>8H0MB$'4P:9B)1QZ?\%-M,: MU0VNO&=3GX 87;ZF"%*[8(:XHR;F O$Q'41ZIJW-QJ9!DP[FV@QG.(DY#^]. MI*#MWK2-S$HTK1<\!B S@)LDR&=,&^M/V$S9<)F.4R5 L,CY&""*B,#@L64N M %>)QQG-S$)7"K:7;WX!%TRX1['9E/V"]WK]1.J8(!_&9Q,,-1C@D@*X9 M/LS+E NF[?NO(Q2^.D#P=_B$K1O!I8D'Y,<,U*1.NRQ0DT3-]^GT!:BI@4G; M2L.-$'TZ#7P+)QB!>V':.&L>-T3X,Q=L%Q#W)GNBMR'>G,)2(S/)[-J$0ZRB MB7?21)DKV"N"X#J?@!45/"(50V8T,$ MPPT95*9O(F+#[A4I1B8'=P(R)'0)[T01T;PE\74F>Z>=%Q\F>RMGD57154WC M:PN8TSH1@^4F>U8:-SMK58K>UB*#133H6&6+^ X.IP26RZ3MM&/#&KH8M6K\ M8Y*V8U1'%/(<[X/_Z-V,'L;LGMFFXU[KMLZI;HEV=QMZZ?\5F/[\RH;-!I2: M<0.L[SZ,=3LUFW'KV$NG5$VAZ=#^SSLN_!7HKL_-T#7M54K\ADRBV:IGL )$LXW$ M$Z3QS;%17["%\SXVY/%JT=IAZSSO=CK)A)I,T ZY["-6/0C%/'H\I*KH4#("YL".*RB0ZZ=IWT MV*H-Z^L2PG(,(X'2".'BNAM0MR8H-MLVP3;RP!V[&85M9O(62'\0R;U8(-4S M!1*G:VGU979P 4!Q\:!'X%H>$JH)!S=I+?+QG5G4M%7D:]_4='01L;.TB!AZ M%YFXZJX^0#DT!+W*^0[G7)X*PIOK.?C5[@XZLQ2&Y.QU@8OF9EG<*B/T8>8< M%L>M]'AD"ZW-5&^S=I@,F(:O8V) SGGX'1D')N-@.9'7&'4R6,Q)R3N>&#D"9O@ 03-@<4*#QP] M\!O#=S"(7WL-%[R9[H+7JD((RX_*>5,*N^"M=1ZX+LB?8K^+WC=Q;\SIBH:S M9Y-)LEE+2QSF 4^ER >D32

!B_H\HILUI*!Z_/"826&5*@N% M$HF6P'7)+:##72F;Z-C:=0;4<#@NM_1'$%F>+_Q8BSUA2##M1+UP*T*FZA)/ MU05/(=#/^S<4NCF_O,$C?68^O=C'2)L,54?NJG;C'W?':.= %*/^3V8$V$S] M9C0R0:&!-T[?7X+JL U3M\3WQ^%TU*NE9G>Y54D89L=V]90=D=F,OYD6!5<8 M5=_O+W9C^6V&)39<;OW?V%SFM1!-*9ZA'D9-9 8)'6(+2"=SA.F!TPJL' &E64%7B M_^@Z,W\,C"_*)8:F%:#69[J+IP)>;)X/^RD?)FHJ>(H@[ $0";#&""ZLB9'? M*,$1S'69BNBAW!LRG[D3$Y,"!G-ZGT2^(?PQ,7V?A:4=GQW,H(,_PN(!U3S, M5EI$M1%%6W;O86[!@3L^67X9Y]X*8QZW:HF-'9.CV=JL54!!$:]($;GZFQNY M@Z\R.HC+:":'] "1R ;YMU\N'^XR1UC(^LQJ]1OV@C)7S?!9@ B\I%M.TLEPW,Z>P1BP<7OOQ/6PR?)G8'XG/X[!+ MQ&WO2[_\^:[?^[W^' MOU7IG[2V$.*G-^]3L?3;13J6L)IU-SAZN#G_:MH_8J#EA/0N43(!8T\R6R#JLT6>(+^S)%5 MF\*V6KW?'0N S R\9+* MYQFE!CXKFB$3??822DGUCV7UNG21AV&]8UH6$_R2R3Z;M<<]*E]9NL2PVHILOM9N54;HL=R,$N\= M?^WCL,I;I6IGN8WK,XWR=EH 3ST$'9PM7JNF^$N';HNW5V28*48LQVR"KPAW MG"0&]FQYPZ=T7;B)-3[?IRV^?!9*;4ALPYD(+A?Q.&QHN_H0$VQF;_/67:]F M-J>%C5[5;-Z_;6=0PLO]JO);NRB+K6CG]\ M%3(4;WQ\-FRG5&^\W(9=.;E-$=0SU;&7_(D$Z62$Y2S=\]6 M3E\I<'94%O*B.5"8R<\TD\_VGHE5F,E[,),YX;03=/.O90 BZ"VW&8UHU&J=58'D[X3-OZ;$4EX>$@ M[[",[R8@KG.,QO<*]UEQ.CH82R\?ZWR%XUT@]2#-]V>EENS13H^EEH2MK?N? MKQXN>DLI)FSC 0^T_?9Q99AT]MYV3D5^/'3W8"\Y)R?1)H"DDF-9SHR:.A/0 MO& "=\!3/2&&@'#!K(L+F4!T)%[I]DBILYEC-8&?QMX&THD$A 1<]G0;D"*B MG71FT^GF!_Z@',ISHMEBF\V23?)NV!5Z01CQ9M ]@;0'Q.@#//JS!;^]X;*P MWFXV6OA$!IPZQ=(2%TQQ6=?!B8!7N)!+A74B8K1:^+//=V(9_ M8SJ^5KCEUYX+^TH37],'(+[:\PT'\6]C"]^UQ5WYSBW?WRC<- DQ^-^''SB M;3]I)A[-L%5JR(]O=*!+5BI'E!Q8=!Q7)HJ*)T+&:9*KH[BH!IV.!? MT0UB;$ZCX)P*[?I64O#RSCP]R376:;1SB(_:"&29_5 M6FF#T]-[C*3&+/([P0G=EY>U0J]UNJ6S3C[CID]DOGK:>_[]4/@C;=CZ=OSQ M&@/9-^>2A4'MX92@Y9.TYS)0K=):3B]4@'U4T?RM%BG]U]3\^6E[<1Y;*/+< M!=56[8@5T^D[:J4!9G:GL5P;IH!,*I@C'^;8JKY%286>9)'7U.IJ#T>9(Y7M5+KZO"/"KJ\Z/VTL.!WT>HTC<^!%5,PFV\[TP#(;5?W*$9 M""%YOMCSKY72)F3D(N96G$T6AD.>AL-V_>&4-!P$TP0N\U[/:JA7ZLOE3?M@ MIS3F.113XJA# YG'^\GT^Q,P-AJ@M(=.@/FNAV5MK-YXIOBLIYR&'H2)L:-L M@?K96:G=R,>16A2)C0U$XK'PG7+\M(9/&COCD^/-&FCFDS6P#1MQR^*]* !X M3P4.LT/D39 MH9UY#R;S\%5P,%-FE7[G50[88Y7S^XXU/B 27]J#M=E.FX< 0,^&Y8HQ%=$8 M[5.$92.EU7 )>6K*L!B+6?-2K$>!+ +&)@+R2X\)CMNL!/&U145R$VFB$@<* M\<%!T="@:"[0]C5N5"_>GTPM9\X84_+O?U^X?;LY_UVZ_WYW_UKOO M:[=?>]^T9 %#.,,*K0$YPRJ&OZ1A<.PV@&D_].\?M'/'G3J\@9;5A\[4C_H"\,I_,[M'0F_JFA:J M^AI7]5XP^"\(2FIA,)VZ#E@F^#PL\"9C9.Q8P,) ++.Q"7:"8]"\OO5=TP*; M:3C**UH)C!E\:H_//+UFC 0QEK_%UJ&V,1J^*5:3/YE#"I:X&@-^QMFF&A/0 MPN8#_AB4IN9, 90^ZK,YOL54PL]P)F $"9,*+",G>(3K8?^3@!=43_6YZU@6 MZ)-A8/!>:M169FAZ!I:[XR7R80 U@\4V-V &B$R-C49@9M9 MM4H^U<^YD7T2H638 N;TQT>7/8JN0<%T35.7VF*3=_(/096UR_7&?Y!;O@%* MR.99J<->.:#"PR0W(U$,'OAC!POZMY\OWZJ6JFD=3Z.VAC1",T[ILJ>)_J2; M%FEA; I@>EY W18"4*>\1P#BA%-TQM,$ ]!SDK>&"T5WZ^$+:X/ 1R##JB@K M<&JK;H!QZ(8AT/A<9/$$ETEV(Y$6>+(CBP,X0 K[P?Q*,= SAX&>]6*@9S'0 MC_CM9D8/:JA;Q.P)D6@@A'8SDZ*]\\-;1E"4 M&LVF)#=S/A16\[*R:$7O?GBPRH>!Q^B!@1!=N'1FO+Y.!<%K L(#5&%GT M>J;$6=V)O;H+1EG9#&P;8_-"N"F7KC.Y)@KGD!0;P .';7J"U;$Y7TI+,.D5 M<4+CL6S1%DSV_Q17K!5'JWNG[P3*.^NK*B'SV HM@]V)D/M<K-8(ZV]_O-.FJ*PI@$F' )$_,W:T MF>/^0"&'*O1[Y5XVG.>W\. BHQ]3SERN;(R!(%D/[Z@]+4S[D97H[O $"L^8=!2GYA0M;$&!<8"AN0(:'< @WS1!_( *Q[)TE^A: M?%Q_^K&JI?VBTW07:J>$30/, 8SU^\9NZ07GVO/8OO%>81JYU_AZ0+>)WWDO MZFT[PF?TH99@_*>'8R'P^#!N\93$42# _*Z M IC7?+_\1'0-9*5-^B)?-"UL)-==(%'JZ@[\!,IJKCE@/V@?L6VGY)NRQXRR M^;,\-H=@>7P(80J('(&H_O@>+Q9L5-'D.RVL@6R%4@D-*L?6W7D%Y*:)+:RY M$"*AY'+L+O 8\&2&2!$"<,9@ 7,R84,3.!7>8PT/QP4G<"3:TO18WL<,613Z"%R_AY=X;L\ <7GZB_V#:DV,!*6%CP>2>U\NBSH8CO5:SCMCK2\51@H/B/WHQ MEGF!7,IJD)\401QHB)@1 W,>1-0C<@U-'DN:/B2=/*$DP$31TVEG7;2EDQ8& MR ,'&ZB$FQ']N*5F6#4JA.DQ#?M/+Y6*(Z6P#IPK9H&I",[7U; @9YB+!+R= M5MTPX7<[.*;$6UXB&7:M3/?L<:GBZ5V^XM2)YV>FB_D3LUBT4(;$4&.O4-0@ M*P8.T#MW']=2^>L9XYN3N)04%W$3*G[1B\B[T4D9T;O(V@Z?Z7!?F.2GWV)5DCO-)6+HTCV+6^=LHFXS8 M.+)M^>3%T^7D2*7 MB:PW@@2\AQG&IF@1"BIK7TU]8%JF;S)/3E=*+#/0+4K>\\:,^5O.\Z*90OR\ M-I2+J1N0R%J;,]#-J-=;R[=$:/&#$;F%^3DF5M$PXV^.3=G&6[-JK=3JIB2' MG/RAQCV?HWO'4*@ SZP[OV@611X[/-1H'DB1QWW_RW7_VX-V]>WRYNZZ]W!U M\ZTH[<@^Z]@D1M9MA>8P#Y*ES+?FJIF"UI;GD$)PB5GYI#AY&6H95S(Q25SO M@]:WP [A0?$'#.*]%2< 7.OP<@J/34R0&UCW@+8[7H:*:HJ/+6DC:TZ#,EUG M("?/EPW3-0+P__!:4(RA@HOIO*1]PU>=X2 [H0(WFMY9JR?,_;1C"]!:WQP_ MT]T0YX8E+3'_78L/@$^%"SX?<$UO64( &,SC[^H!H'!D*'R'4//X8="MN&+M M@TU;U)AH8\9QC;=C.82C@<)Z%/#FCZ;8$ A- M4 U8!+31Z.8RAE;GG*IP>1P4.<$P\M@)/,;!V7OH)Y_-"0H#-LAWS*>ASSQQ MD[=+P9<6P0KJ:."43#R70DP!/1X[Q#\I'_6A*T(>Y[*[XF+XR?0(8N!:?I4/S!DW2;Q^+!#@>1 M_3_:8RX5+2\T'XTQ&P8X='?1D+RRN74.[_5Y+GY,-RE;IS4&,[1BXS:MEO=4 MS*CXYY4'_^6S4#AJL%V,&GS6,+H'-$^U:QZH[6.@5M&I>6&D(]4Q>15R6S\] M+RKYBORB@M?WQ>O%6-'GL1#O.:@>]Q3D%WX MY"4Z%V+XV3+SM3O'[FG-U0-OLS:@5@_;>G7# O+S\'@?GG#ELXE'^2]A&%7$ MSCR>!?.?>YEG\%F;UB2"U(+)LDS@BEC%7#E!<#;_*GZ8_/ P^8F+E7 M,NK;\SR&9R\/^L]MC^!KI5IM^0P^;\+:/WD7++4M2Z5U"TA)*3L=EJJ6&F44>QK6SPM&8"H86-[)_,YZ M=44;\I<90ZJ(R7JWU*DOMR#/54QN,%VP8,(38\*T%O8OMG%48<)&K=2MK9@9 M?@!,J)RMLM\@3>[9J\5"Q4+'N9!RDN4$O* P=?=J77EED=1;+%M@\^"654ZH MGL:96I'4>Z 9B+4-.T7GG('(U?57Q_.DQVK: 2Q[$^KKS]3S@%\'SBKS^C_! MJP7WW,0.>;1C[+F%OJYC653/S[L?;-U_JU-;GG2?-_V=:A3I$#EOPW:2!>O2!%6-"%@C3S<<'*B.BF-ZHG&E.F6"LI%51B@8+IZ M+2TO7^D\8@69KE0]#$] .7OD-&(C1;[Q26M$A+ M+IAZB:G3B@@434M6CZGKI?99D;UF+V\MD7R25A9ZDK:-2)TPVEJN\QZ M5$\4-DIG*<.H%'0>5:'B@G/JM;2D_5?.%U:/<]JE>OOL$#A'.7OA-,(NYTLS M"PIS(&>A]C93JJ5506QN#X3H!B$C!-M!RC7- VS )_22SJKJ];%XIR0Q%PP$ M#)0VN'5SL^ 8&:A>5>] ])W:QL$)!!-@W=Z:R46%J:"RI*MOEK2Z;E#KU 6Y M0>CNV<->#/O;3DWOJBYM5"&H@HB!B#?+_]P[$3=S+I@_/)5Y&OZTM,JD.UVH M2*6ERV;9E.ML>X[R/L?XMJW%FCGW%2O4XB$1[F89B:].N)A[TE$]_**<*CP- M[_$F=4SN22C$(OV'A-1F.7W90NJ;8X=#H'ET[&7BJMG(V?TL$N4*3EGBE,T2 MY?;+*:V/*?GL!)S?A>2SON[:@#U/&]#!AK0#?/WG2;G&12N_-'&W65+; M@1VI?3KKY)QI4W31+%AO'>MMEA5W:*S7*#6ZA]O"-F&NP!\#9S@7/\)?.J"8 M_R5?\%LP@4T8XLM47?_/A9?XYZ_1AFF_"7TNU+G0YLE]3L4RL#3[B?U.F=S: MT'S2#$OW >W7RX?[C('ITN05ZN_A.9/_ GC4=EU9I%EM/";P2Q+N_WR[?OU M^O'L2V:+1.\"3. E)6UHY8A,V"0.T ]@N8P!V@@2''3.)I_*$=Y@D^'+Q/Y( M?!Z'UN=M[TN__/FNW_N]W+M\Z-]]T'1KIL\]R=MH5]DL :M?M3%#R?)!JR,] M"9OR;U7Z)\W<%#^]>9^*I=\NTK&$!+H;'#W@[,B,X3Q!:G M/DF8:==$S+%1EEQV)1%V]0VS>Y(2\-X8LV%@L9N1N...3?%0$049%UL@?S[/ MQ8\/L(_/EF/\>,-E<;W=;+0:8 0Q$'931(4;, G6C\3P@B+^]08/\0&N0KJ$ M?WM3W0C_YA@8F?8#WAHB6 @?E],/:2R!X4[KEW6\\@Q12(1DVD-FDY!;%'OM M!G=*!,KCTHW[9M'^?V,ZON6;?;EK1]\7&(0"4(K]KS?U]6+SE6+Q^W-&T]YL MJ:OIM>X:8ZU1*QUEU]*"#C:E@PMFD&17@!26HU6%1#Q>3M@X8*P8PZ#9M#]& M28W^%N1ST.334)%\E#LJV&=R@/0'VLU?NO17OY@VUR75^H230WCU$^OU4U136];8\X6Z56]2#: M2A>TKB:M-ZHIM-XHU^K*T7JC#K2N7JU:X<,HHV^+%NIJYF2ND4"U[;7M2WHR MOT@8U=JE=MY#>D]6\1XLI=>WU[5Y4OK9F7HE18>@=D_#S3W93N$'*X8:6RO< M+9OYOD@ M5W(UWWSJEEJ=G#ME%!6\!>\L\4Y[:_V_/]ZI=TIGM<-E'N5,@?WZ MVR%+46[)'_YC/9H[-:^;XF>S2:I4X]Y[DD MQUYV^FSW=QN'-_RWT:9-/(P9W&19S@Q J_&"O*GK/)E#6,^,*OPT?> $ON8$ MKO;(G$=7GXY-0]-=IGN:,XIF+%6T._;$[(!II@?&A,>&&MSLPRJ68_ G^8XV M@YO'].VCXPP]?([FC?XE!%_AQX+[_I.509?F2DH^"M8J"*=58JZBW*\CG9>13U-NI=IZG4KV=L,\_%"5V MQ;(%-@]M6>7$Z&GD'GZOW%=.(R/B&&J-FIM-P(K.9Z.HE&[1V>SW^^SX<2S( MA6T0<1-_FOY8!KJN;.Q/!G81QIGA?\,'_>>VP>9JJ7EV$)-\"VY0E!LV&Z6E M/C?@M)Q:J=I5;V!.X>^HHJ@O'9-IOEE2'>OCGV]XU2K_>H M];NE1E.Q!(PBW;%@MN9F\\<.B]GJ5?72.8KT2'5%@1J>2)'_56_N8M#8'N5, M%^3,X4XK*+CJ1+AJ%T/)]L=5C5JI6U-,>Q];,N:+DP*_.O;C5_.)#7GB[7/R M #M%'F"1K'3LV2;*I9$4XQ(*.BC&)102L5"S*>:OKFK8O5 M9?YLU\>B,)A@O2%J3 MBO36 DKIV<.^U*7?V+;3J+%Q_$$TURM(75%2SVAH49#Z5J2NG(HM\C"/3O04 MJ6$HNS8:9K1]/MBK"+%Z6[&3XR+)LN"DUD:CDI3BI'8GY^%@1?[DX7"Y&NY! MD>E5;V5,1-J["&F6SLYJ:@F1(CFR8)E%ELD8K;1?EFF^^=0HU?(NALP_\S'N M=V[\7EDTU;].#2?/M$&^;7\.OR2/KTX2_(^&'CLKP!HHO^$;<+3$R*[ MJ0F1S\^'7*"*:O67E!S%*-TRGH^8823YSC1FLBQ3G^BTN2HNL92[ND"!BVA+ MQ"+24ED_#CZ]_<@F\<4^:*8]AJ?ASSCPATT^O1Q:3/3'VO7_] GTU\?2J)MJ^EI0],S M DQBAR6T;X[/LM:N54NTHC:8:Y0$@IUF3=MW-%V[=' /6@]W0 O"M]@6MB>V MA$?^=\Q##W#(]X;?W#,C@&?/8QM]BW?]XV^=>KWZJ[PY^2[T8^W7=Q7M._SJ M)I9)7EFBWT!UFK^G#)]TV .%!N.0#03\1N7/3G6$V[9<-G0]+41R#\+@04ZED-M MJ"^L/G*=2>;B]VSJ\Z3(6I?V<,:W -C::,^-6H6N?X&JV5;8K\ILR9;^">&_ MJ>Q_MNC?54BZ;',X1H(B\2O3/3 Z/?B\X@+=HJ[%/O-67#!U/!,MK8Q$G2L@ M$*U>T5)3];[TO_6O08/^\URZN[L^_W]]?W7S3>M\NX-_>UW_? M7]UK-Y?:Y=6WWK?SJ]Y7[?SFV\75@[SFKG___>L#77)SV[_KX0_W:6".:<&X M$HSKP/VHP'PT(&:+80IF(OT2W >'=R;_P(6P9=KL5^W-ISO3^Z%=@@/AN!X) MSDO'G>GNL/S5<7Z@^ S#CM[']_C8*-GLR.%X!4H6Q*KLU3XV/8 1"KUX/WC4 MD:!"_E^@N\ AUART]-1Q?6SV#H".75R51GM!M^8>7/I6//'Z@HR77O1,]%)T MT_8T+T0P/%WWJ0D]_.B90"6P3X Y)PA+$$1T_1NRBTS>UW["=!M_=D;TYZUK M/J%^%3:*"3CZ"O_W2% #*"$$M9[AX_6U;K=5TG1/6F 5[6',/!;?V= !E/FX MKR"#XK=P7<#8%!6_@183P'\*A@$8%W#'* #]SS1&CA:(SP#0H"? M@(W\P0:<@K^.%_@XJ@F'-!)HP6+#!SGX$SP7+Q1/!/327L#2P5\>'7#72SA% MX+^,_'-ZL,O+(X%N])^DRIGN(MP 59;C>8 8F_D;?8GK:=X8T 7(U*_HE2)$AZ,)4F@*$.>B38D/-7R=OP(EGWJ^ M.4%E4-%N\/57$@CLRX:7!H!I S"UT+PP1R8L""8P$DD 2 :8+#X .&EBTF3, M>8@>0<<#9ID 0:\D"%E^S_>X]#58HHM?&4Y@#1>_G)F6M?B=-TZ[DA/%PI=# M1F"W'Q=_@#=C!BC7I3L\QGZD7 ^RR33,*<)V\21MGKY"8-Z'<)1$#^P&/@6DN M:$1^=0"<[**0]"7S1RP33&$=A(83P$^>%TRFM,PK/O@>8;+J(5Q%,"X#\6DH M+BW ",H_W_FP9XW]JC&IW7HERP'*E,AI9[^QJW_\K=L^ZZ8$>'(/2*&^TP?< MDP8=RWZ"?O>1%TD3MLJW#A D&(U<="R]P;-L\^4 [S;5V,O$"2'!//NWRXRZQ\BBT2AEAC#QB/RJXSBZ@V^1-RC7;[Y=OW MZ_7552MAM0 E@(\\,BC7F^4PE"A##HG/\8_CD/%NP;$K?[[K]WXO]RX?^G= MEM9,GWORZ 7M;70W$@ >,P[(.AXS3=FRZZI1+4.;B*Q?B^$3%,;#,C/LNX P=$2$ M=X;[FCAH=[UG%MA$>$[UQ,:F 60A?<3^'Y%W:)DCL&$,$Y]!N^.19G1%AP$8 MANA+2&\( T-@H< WL+4?S/>RI'Y!(/LE$(H[@+MH"B)!=XN[J[KQ5V#RJ!V9 M[T/3DU$\;F#BK6"' P%XH\ B5#_R&!(^1;?G_!$8) CGWA6X5PSW H$RIB%] M.A06H).8ZYFC.?TR$).J$\=3@J'A A_C09PDV,0T'! #&#/D@H6.I7P\Z0GK M4D.ITGOH2[$B'E>0B#HD N+<-"*'7M>,L6X_AFJ#(TPSYJ G//EED@#>AA&- MB;F :!X@HPB4)*09WNX^L8(&U*&!(7MBEC,5@144_"ZSAPETAPB-(M&<4,*K MAFR"MV*H.T$?A4)0"-,+UB)%TUV?G"W+><2O/-T2$2G\8VQ.,<"&F$0\ZYH/ MRUMXA&[;X&<6F%4&LWRR,-?S:)F!NXW"=^*X3*I^"V/"H*(-.9.7Q+.N@?T6 MB'1',.S00R0;0 G*L2^L%(PT@TR M]KE/2)Q<2&3%,&E.ICH_""5OV@UXP)_8$4WV8#H%F0OZ%KXP=,(NVNABQ#8F M-A5Z5CVL>L%H9%( A=C3T+TQ*%I+YP$53+\@82VRTU#CXADO749Y:(5+K2)F M01<:/T"2F@;31A9(TZ# D6HX(NT86;D#Q\6HZ"BP^3&UJYL>"S,FX *>'<%B M*2*+H3'T:F:.2X?0XL8"X>H@?,$5Q0@7B-82=V/,"<]*6I$D,^#1K] H+O"J M#E[9:(1)/:@FV4\1F"+D%I)7382!A_'HBFBSC!O$HDL:_:Y/"IPIA#/2EF': MV5"&?$6<@O>/CCWFX)"8-)\P,N>R"?@3E !+X7L>$]!F3/]! MASO"IQ3'MA9E ;N.I3E/B311EQ*0><*Q[F/4?JP_)3(X9>IKM W!Z*1U)YB6 MIE/(<$K5KSS[3FY4\^8>UDF F,#$9:8NNPYMLTL24WUL\EQJ<0$F*L?$D^%XA3!2">=?F,U"M=IX/AC;0AVM4=HL'COXD?+&> ?O^)?!2:5P20_J<4$8QE3E%G% M5-]ZJ[N^=G55TJC$K=:C-/%:[5<.9%FY$BLG$J?!_'?RS4Q/UL=P$2^>&3VR MK+V)/^&-U%<]VPZ QI:+:WX/BVOF3'=%:4U\= 56US029;'T17A_6 Y;5)$E MJI]X%ON*;'-PK2<.>M5(,1[6$@76D,>FN31'[RRLM &/(+"PN@A33L $<$.[ M! 0"Q3K]L>/A$;)GN.: 4YN375B"01F*DI*):F)8AZ]2 5J9K[X3EAXR=/H# M$2Z(2-*,"@@L/$"+EQ;)B@*48%R_663S!!PXWA3L*WI!PW2-8 ++4;DS/4GW M9$T4%1S#PT3]."V)^ZEH?S)>E>?K/S!S7W,&EBR5PE6F=.58-Z 7SEPWW_25'B5!Z05 M63VH\9HH+.8"XB(^!>+Y+\@&(E7JDD VH&$X$WB7.05,@2RP$1Z9;Y$!']$9 M%@F%I98E;6H!W>("*"E$'X18>:,XS0[3U;B[P;.+1$UC3%_5I&Z1]R6E?^44 MJ!&$"Q8$Z<+PX@>*)@"73AQMYTDGGXSR]T21%J4,^LP8RRH\QPJX28?"!<6\ M:8\A.PS3 M]T'K4YZT8X-)^X"@>2O$-C>)/'XVFTB%2V9 EK2110P \!PP8?&424& Z,=K MF1LEVD;'?0BIG@6TP>7_?65:Z55*43YE^%.8;1+<2 MV?%D [[3-IBU#JC@1Q' ?%U7+N@/M^5M+[]9 *\\%>X\D%2#U:GI<$.=S#! M$QB 1"DD.D(G %,'DI&QIW?T[:VX8NV#35LFM(R9[DO:? )2=#1SHC\*G/!' MGX0$Z%F6E'^"SM!BD,Q O#(!_6Z"Z TA$T9^ *S@)*V8KT/&*VI9 M?/T(/[0S"K4]@ARU^2OS5@.T@HNU]@)($_-G+#;OH5P?QN\5'0JP;%N6%K:*\\!C+"_-QLLSG.%G7W/8, M?2SS)'K8]-*LOF7?2#:)X3 *VSVD>4PELC/!!!@Y1B#:+6!+!Y3=&F\[$15[ MQ&VSG=CZ6$ "_**+T#*J ]"L !1F\R9YR-CTAPBY) WTI,[Q@]]VN1,1]=6*#"T4^$%R;J) MM=/)7FD,2T1-<"S4H(S?)[.\P3M^M$*KQK0C2X9;@&SIK3$:!9H6F\F"4/@? M5[ZN/C6'D2=(+7>X.BY)@X><1\R(XZ8/F.AA]QFL&Z);Q I3W<=3/7'"!ZH[ MH 8FU*R'%#;O*A*9 AA;TFWN][O\*% /<]5YR0GO01-VY<''\I@6F&(!BXK< M* LH""N1$J8HK#HB>S&!@L6:)=Y0)V:E4;PP='8C&SN\4<9#L'<+;_X#J\F- M\*8Q5*1+79MXTK[$<+BS:#F*DT0V3LB)HI<,OC8MP.W$**OXR;% (M+QVG)) MC^S<$$;X1C%7]"2JD'7]M. 2V=C8Z!.HXTEVB%R$("=DC/GZ/*8M,>OS M9BX+Y5$H!8"S5DDF&13@$33T<7E#G%".2"3*8(O(&\?27#P?Y?&%J//7U;D7 M!@K@N:4PLV/9398F=6EQRTL"*PQR@+>7?+/,JQ%4("D ;B:"R26?8PTLPE95 M0);48,QF,ZI<(=% 423VTR10E!8>--('KJANE.T_$9X8P9H"N/B]4;A&"GT- M5K8YUI?P*#L+\29K2UDS,9@!W&4TC?LIH$T<=^H([QM^%AU]DK>BZS7@',Q9 M,@J<1<*PE,BJ@@L )C$AS=\19 %Y[BRV!Q 1T388W39B.F5"$DSYLE,+-+)\ M-(^71 @_!9%PQ9$]U3T1'(BS.^I>4K=C<#"P,$,J.1+W+MHJ9%[$-!KFKO R M#DEEO"F:!UAT6>CO+B[U3R].4 GG?\:6XC$B#B BYOP)J.11K8LMH@H@WYY. MZB@X&T^E1-HG4X<"1;P23/32Q9YU7'R$O?X8JTJX3M<@H$? T$76A'^OVQS-GBU1E0>%P>*:(P,;S[F>ROQHVC*5Z)//%YB M>B*V&T7@Y(MB" 3;=7&O%MD?2$ST4\3."[JW^ RY450,HNO:%!LOT2:9269^ M,*7=.S-;P$S&TF)OR9UD9O.$+FX]#..BB%"7Q+GL31:&Y AS^&-(.U$82T;) MI$E$TIRP0B;5PM&/@*5(&YG9>,+)3Y^G]'&Y#CU6F$PF% ]C_<7;<7+>I6KF M=:0MQ"YS$36&9!OL7F@ /R^$&RD*)A]"O>O B+,X#*.#8L\8 SPM@J>%5BCO M.,UOT0V\@ZMLZD[I^5/J?DU*- M_,DTT7HS9&$OOA,1Q8U,.IWD!!,=9_0E_S:]J\ "HY&G&;-,921_PENW6@[X MH6XHSP;,GZ%>1JMFV;&#/=WTKX5M'24P1+Y

NAS&C&"YBQHY(-HH,GFAK?OS0!/XPX_K&B;QO4C##BG9'>$-[ M!"' K3=0IR(^ PO8#B8W#4/'B/= ""VI%=&:38,U('*93&.0_3AE. 2DA"\Z M*H4IUGQ9]"GY,E*#DL"+TFJ%P)*W1>(A)JQ&P @1:#", 38HR+VP1VEHE\D- M473%D-&;)5QQL-."8WU8$L> \RC:@NF[.@;XED_UI(%GKQ"9L@MJPJ@#+84) MYW/2D<+ H]<3PC$,'*%Y*!L8$XXQD\KF.\3FOHDMXF^R\;-H'6NBD<,FL(TI M)JR[IN@AK0__"U"(MTZB]+?HA,^.-[_BD:< 3TGXX[,@['$[2! C>Z+D^HHZ MF3^9L>.KQ=BQ3&+B@TE$EZDUD63=\L=.\#A>$I @X:DU>;QM12S(BH(NK:%5 MV/U.VD"IP6I&>DX%U 7WJ*(J8LGKU+Q,2&-PM"XN>"/%JM%!>:MLX[6'!\ M"Z<['E9?UO5<+,>?AWD,O(4\SU;D(CM-$//$IOG2GKACZ4?GZ>)Y411(!F6H M<5KDO<5AX(7Z<_'Q)V&()TPJZ:/+]C1)W2@:VZ^PS=,,Y46D2P39#/F3AQP! M=Q83@9:$O;M,,Q7M'"0ZCPU0W(;)R0BH1T2\G3WI%OE5"]:CT NH;#&;#"WD MB+W#I4I1B_Y2TD-&I:I3M127/M%D 7YL$R:=9,"'GT>D'F2@@B3S/+3S>:B+ MQ!:3+$)Z$Q7Y8JB&WR*:QO-3+RJ/IVK[P+2&2RU(>5" ATYC_(3]V/6!97IC M,MKE+XNUAQNE<>R:=HN\CF?D=;2+O(XBKR.7O(Y>U*JCR.UP7Y['6TK)'4:5 M@!*"U 5E=HHV. %<1D?@X?Q!*ADA0SBN@+!]K"\.ZV07#F$/)9*=09D (?*# M.9&L#CH /2,*1-"FR\ZH#,\LHP\0&N%@;F'6 6TAF:N^:"BG6,+T@"BXGLJ<$A1")@\9$7&@F\\CY'^+;D%O^4&:G][W= &1J0N47%4+?:]U*>!>W-FJ=LU*S48]1 R?:R01=-:0RSFIH9V'& MJ:_]O5ZIA4\/)[[0V:SE>#Q8B+L._4.D5'D*+PJ@8OU]^+M3VZU82)A,HB04 MDNDJ/#:"B%GH"R0B!J*PY4\6.Q 09A4Q&QV6T?$NF;*A68P4K\_EV2O"LM6L MET"!<0"VN@W\@T<"@?'1RN6'"QPX$@1X"O13]GTF[AS*,VQ8=NQ80VE4W21A MAQ 2,\W ].5]G9'A?0??;0$D^.P$7?R]7J\T)7+$ F2NBL@53;O!D39,U@[9 M;*ET*$1-1,A#-O"75T/H="KMB* 00MW8!@BU=&^X:);,K%6W%9JGXKRM0=AF MNH.7=^FI(VN_TF]+LVJCU= -0F4PL[E*B OEL;,$2BCI4KOY"A:JH"(@&"BZ]HRSZ7EH] M+K@6Q%.GB1LZ"79]GAE]QP,'<1.: M'\OP_$>7B027$/44O'/75_7%H8<(G2 MD;K*,SPB .PS_0>E(43C#Y&R1:#G+8E2H$J@R?V78SU[,([P\$ I/."MH?N8 M]/);OX3N8Q<_9WO6SYCRNS2#)QEPD(.6R8]<',L3;?TW;F.'FU_LKC%P?!!> MV^]R\773.G7LZMF1F_[+NHX?.U]R]8J&@U1C_^M-H_M&TGP\:F3OAER)V,K!TL)WY?]W'P5LP0O%_[T( =#J_9#0H MV=7PZDCXY&N.KQ6T-<1TE>CH*^5 M]%4_$/I2D+S^7I!505:[)ZM?"K(JM.$KT%6M7JC#0FX5ZK @JX,B*Y75X8:3 MI78=;DFI24-TUJO-DE9O=. _K=:[/09E]D\1L7R#WB-RZ0F_,; M*Q8^;+4H8*)?);Z^PXO*9P!L\JJVS_*%RKXQH^J*.:"_5:W4\T7^+ZIAX01EP%FIW6D4,D"%%?.0 :U* MLY !)RX#WM9+9[5VOE!Y=\QDH"S[EVL%_Q?\7ZN6SIJ%#:#$BCF@O]&IM H9 M<.(RH%FJUW/6!&HRY&F(@&XE9_D?%P&*16A/+<'S*IPW=/1Q6F49LEFJ=8K( MK!(KYA*8KU35$<=*8.$D\-XHU1H%URNQ8@[8[U8Z!=.?'MIKI6HK9VFO)BY. M ON-1A%\R7W%/ [>2MU:K>!Z%5;, ?OU6I%ZD?N*>9RTUDIG>8=9BY/67$Y: MZUV56%ZQ$.NI)<'V M]YW_^CB*_F%VGIMG+VMM7$Q4E@O]90Z;A+"2R1%B56S"/.5B\27'-?,1\#OU-PO1(K MYI- 41CX>:^82R5+SF@O@JNY!%>KE9S+EQ2.K9Y:^NI7<\2T>\-DML&\(L*: M%T^V6T5%D1(KYA%G4^FH2PDDG 3::Z56K6!Z)5;,HV2A2%_-?<4\7*Y..^?L MU<+GRL7G:K4+AL]]Q3R.T:^8BYAU7K.10J%CL\G:;55 M!%:+I%6!B@LV8K;'WO>8ZQ1QU?P.MNN-;F& J;!B+JVZ*CDCO[# \LE<[11< MK\:*N62N%DR?]XIY1-2K15\ )5;,)X.M"+7DO6(NBKZ9=RMF-7%Q$MCO5'(N M3RJ8/A>TYYVVJB8F3@+W#:44O6(AUE/+7;UG1N":_KP(K^96+]8LJH:46#$/ MGZM(:,E]Q3SZ;K8+ATN)%7-):"D:+>>]8AX)+)][M$\+DLP7U8U2K9-K/\33( !E-Z8N9=:J M^;KIA;0L:')Q]V^[U5R/"3;>Z!XC#05-YHOJF M,'G6JHJ%;5=O-4<#6R'"/$DAVJB5NODF@"I,$2>R,X7)LQ"B!T:8)RE$W]9+ MU:Y2QV&K]YICX$(A,CT5^5ENJY5H58C/0GPN._)GI8Y:J5<*4<2)[$QA\BQL MT ,CS),4HN#'-P^$2@];4JF[,X6I\RQG"9I^3K/B! T^#ISAG'Z SSJ\#_^< M6J?USX4]_O/7:#^T'?I3UF*)4BQ1B84_1[B=9JR2!8\4""363*O_"O]MM&D/ M#XZO6YKAV'0$JOMLJ+GLB=D!@V>YFC]F\*_+F#:!)X\]C=E#N.1:=XVQUJB5 MM'JUWM1FNJ?]O=ZM=#38LV4Z-CQP,M5=N-)WM+\W:I5N^(M\JJ=/F#8%1#I# MS;3Q.0U-MX?PG+.4JU/V<,$,-ADP5VZC4=$>X,HA,URF>PP?NO@F(]/U?.VO M0'=]N,\9\=W#YN/;7;6YJ6L"' $G\-B1Q0S?TV9,_P$+3G#?(]>9 &%.S)(V M&YL '00*/-0W=0ON<48CC_G:8 XO"8],V2/>CVN;]C#P?,"@1?#0 ]]YW_\# M= (/WF]H>D;@>6Q8T7I>])?S0!E+0NHVTODL'("5Q_O #$ M1BD#OB%IF).IZSS!HY;)0[?\L1,\CN$Q\/*KR 1IRV:>Q^^$C6@ 49!AS/4D M4&.4PH%9T500*2KLX:/YZ:,W!583:Y-Z!-'@N$3A'[0 9(AKF3;[57OSZ0:U MF4?L]EDW?EC.X\?W>/>GC^_A.0/W_2>-__=/I@7 MDYT_8!?C]SP@\V1 D>X M.]L :<4 -X:'Q*3;NC7_'Z,[)L#Y 5 EHG1DVG I(C!^(U[%>;YS?D<)0(>!/S$12)G$DGP]F'.RF32"B&_2!$_BT M1[J.X 0O)T'@ ''\(&5@>B;) ;H>H I7(8@MRS'H224A$W%)?0I; CF/;RV6 MA^>:-D@)WW'G(:3YKG#Q@6X1RA*7P78-W84/@ ?=G@LQXP.M@Y2Q'2R_1OG@ MN#X*M1"]R,:"-@(2G9ZDKHHD2_Q.1S$%FE!>/$&I%@A9*T4";'%F@N@"LN?: MTF+ZD+;@$08(3H ':P0J )]0TBSS!^I9AZNE4 7P[;%H"XF7$@0"BL!C*%9) M'TV< -]K%.HV29'LYQ2$(V('U)\%_$U["6S! M1IF(=V=+[+W(V:688ICH<_XCX6%@6KAUV(V!1(H@$HB'M\3;+4(M_C5U/'_J M@%@Q A?5)*@BSQBS86"1"K/@/8&>$0NPWRL0J[ >/-5#:WS&5J\[!A'-D&1I M Y9 ")ARY@B^3;[:LLP"F,(M\(NXG8L=/7SABO:%(P!)!$S\<:ID=ED:C_&+ M$*<@I\?.T(%KYX1_,$&, +<:B;+X\X8.*" ?[F)<_I \-NG%''PIV['+7WJ] M6[D064JT0T0KOA.7X/0N^(#[_CE<@Z:$[9L^K/O$Q3$H!LN,2)CIP)!P-R[N M,FF7N2A%GTQ@\4JVQMVYNS(TGS3#TCWO7V]NOWS^_M_I+FD8EOR$>E MKT268/)YEP]W;Q*Z6[BV!M F9:Z1;(=* 60 GP(>OI6GE^EE9+OP>5@X=S?!S_.,X3-J\[7WIES_?]7N_ MEWN7#_V[#Z"E9OKR)B 5@SFZ38SP51)Y#'*3B**O$D[6COOX%5!F\4[OZU M\[85R^9*K5P2YAY[D5;$5[2?#[SZ(/Q22.J!!<); M_#<15)4OW:GOMXE4&M22C:4^#D!:89SNFL?I^NAY?'P_^)35;.K54O()T)D$ MLE@\4?#E_OCR-5<$.I2+(NVE+ORJ,B ZE]EL,_OC@?_?WI26\9X9>G.I(H&TLWI)&2 S-S[Z90LO\::R))'"\3SZ^^SO)MDV9B$( 5K MJJ?;V-*[/OOZI*MIH*"!@@8*&BAHH*"!@@?+Z_L5B^OWI ?;4I5ZA0IE U8--_P! M<-7M->RPH5L-.VS ZJ<"JSJSPZ8V:J5M!@$Z.+_HR4"D_M;[G]]27_6.F\M] MQCMN+O<9[[BYW&>\X^9RG_&.F\M]QCMN+O<9[[BYW&>\X^9RG_&.F\NM>,N,AC^@?& =*I;6KQ(IUL%M]8:5-D)[^INIZXP57/]@ M6&T-SR>M;MS0@!4TX+#5'U3:4:"N&+D5-&!XU*ZTS4E# VH !*\.6YVCBN6 M)^QBTZ"_/O7=P:#=;?!_R_&_VV_UJNUV55>4W HB,#BLMAMV0P-J 2O^JW. MH-?( -N'_KN]7KO2?K%-X_L:F6?/=>N!9V^DK2U&]JM7Q^IY%UMQ^]U^8Y*I M?,8JQ/!6MVH!K)YWL16WWV!]#6:L0N_J@MY5L?C=Z%W5Z%W#QNY2^8R5B/># M06-MK<6,53#Z7L/H*Y^Q$@/KL#&O5CUC%6R^VVE7?/$U-J]N6_3K,;?T;6RK MU5E9.H.*(Q[J>1=;B)I#&T5L:)CRI&R7K>Q%;< M?;])*JQ\QFH,+OVFE$ M9JQ$]6JBV:J>L9H 5I NF\B6[;OYW?U^G1(':W$- M6W'QAP>-6Z46,U8BVM] DJ50]8R5)*IUVQ8$S-3:M;EOT MZJF8B# 1>\P'??>.FK4KGK,6(EQ MM4926"TN82NN_:#3H'PM9JS"TC)L&'WE,U91DKO5W6\RU&HQ8R7U^!NLKWS& M*@RLO=:@:OF^,;%64X/]L$Y]6&IF8MVVZ-4KX66QGRX:\VIE%0(J1L9Z7L16 M7'VM*K74XA*VXMI[W29AL!8S5H+R399PU3-6$\_25&.K>L8JE*W#;I.;4OF, M53C0FHJKM9BQD>IK< E;<>VO>A6C?,/A*^'P_<,Z%5BNF3EUVR)6+]*IB)_8 MENK,W?'8#V]V^5+AV_G7"C 48"H>B]A>A9-$@3\F2.BT'/SG=5T1>>/58Y6W M2BVVCWK.M06 VBZLOI!Y6*UI:>-U/J%XVH!DM5?=:W7W?PZ@_*D!H+8+JR]D M'E0; ]$0RP8DBZM_U:TV(&OCA3ZAH:&!R6JO>O>P6F-F0R<;F%P6*@^'E<8L M;P< U'9A]87,;L7%"QIJV<#DDE1YN/]S$,M&JMP:F-SM5TTHRUTF-7:D5967 M\.084+R9?C7.K'N!&];EC*-L%(@B=+^H.5JN7GFOUSHXJK3NUN9KK9HT/]>5 MU1@\NYU.O:RVJY=:H8!=(\#<2B+:[[0.>[52 VL$$5NRLAJ#9T-$?S+ W$HB M^NJPU:DVGG;SM59HN*@1F&X+_=SM[3?T\V<"S*VDG[V#UK!7:7^4&D/$EJRL MQN#9"*$_&6!N)1%]-6@=_"R:?".$;A/]W.T>5!R75>ZF6>% @X^C:+R@'^"S M"SOBSZ5)6G\MK/&OOYKUT'+H3Y6()?.P9!H6_FQN=[YFEG7G47("N3G+DK_T M__O[M(;K*'4#QXM"\H"ZJ1@[=+L)#!4[Z53 _V,AG!D,/$T<$8[AB0]N[$V= M?K?E]#J]@7,G8N&\Z/7:APZL.?"C$ :>+EG$J?#$;"1BM8Y^V[F&)\?"BX6;P&G-8Q\V#H?H MQ&(>BT2$*8WEPJ!B!G_!!# .O!#XH6-_<3+DD2, M6WPR.#.L_(M(\6)2/\Q@-S@#+=)5IP:CP=291WN@A=]-?;B7.P%/!KZX%;DC MF 3"2Q,^S<4!HZ=1/8(9QEJ3QHNV*@\%N;D4,<]'XPHDP\U#N+L'W )=O16OSI?LSP&?>NR=\ &3X MR!#;=BX8%CMPR$ $\ E85P X ;,%D?<%UN'+NW.3 M)/)\0H,Q+ 26OG 2;PK'',!VW >IQ]Q8X!: >S%G459"*N+X&&]6WWEO"_/ M#6&]21:D]";0:7\"!P\ 2;B*1TPG3,A(NW$"&"E(&!;5>0,,R(^P5]B0PE1\ MAE:?I='>V3\4\"CD*0=?/_2"; R(V[6Q$X3)XUP^0"C$> ?PC'0 G<.?WX%H$T% .V+X= B8YI.$* 5 MGAP,VP?Z2;>P&$D4!YUVUWYFF?CQ21)8J)47Q])WGA2H-6Q1O8-;L^X_-YY^ M6R&2.H]T"E,![DY=0%S7\\0\16*69*,DA5OPX:P6=& PD49T)!A>BC M,4VR M@4';^>?4!V%"3PL3NH&7!53H$5DU9 ?V&N.5PQZ2:12G@.3N&$D:TI9;UP]0Y)#L)YO/@1#B M7OC8D>IE])>D_[3[,7&V1+, HMK6[_ N<4/U.W$8((]P=JY99!K=N3&\$$3A M#9$>O2JZ63A9VI2@35K#XIKD01!/(2IH4+9Y*E6:SDA:V@2F]&;]\D)^,!8 MHY@P\Q<@2@#)R&9_=7;>GB>Q*X+=/P!O$^>?;MS"?R&L?/X2NRC=(!7Y/8A& MP%^N$+06SLD4?G!.0/)+\9$T>;.'\[U]L_>@F=59R7>?\LAJOY:034*DM8T/%$G"*HH*"5Q20@>B2Q3 4 !) MS0:)6OA(1[24Q'O%MB*?"-XNP/(IA'_#(#!01LA M$TY$Q'&&L@&=D=)M\ 4X%[QO'LQ/,Q:)O2!*D%_B%>.5@C2Q0(#SY4^K+ZKM M_!'=H2RN&!Y*X",""A#QL]@-/7OY>D;:(C*F.P ^@ HIOD=9 - ,((?L#Z9Q M1WRBL/)DZL\?@"+V@"PN.2@' K4)] 0A#2)9'G-48N;17# )3K:" R*YDR2. M*.-(I'>(J9>@*_LN 87B;CDU&?^(_5&6$F3=,-/S 5OI[%R0XTAF@L--:! B ML8P^OE*%U87&[IV^GT3>(A,V IY8W)!V/$$]']!5? 5DB4=\YW+F'&[ OT&1 M "E+$DL!Z'$# [H3TN]HQXE(E;9\(MH10K[+9X,X@P:8+3J:O$&)NBH'\!; MN*&"=@'(^A7I*9 3L2O)*9\PGQE0!90UC5*""U#D&"8GTH/?&9XA;1MPNRB, MXCB@*P?^A&@-T W%/ZP#E*JUFHP&Y?W!^<% H,DOYF3DF@=J049-7QY/:T7, MN>X<<>L&&<$1C6V4)>1\@:!C@5-3CP'-4)K'U(_'165_*^A%SEYU1RKD$F]" MV$+L =CRDB5L1*@+/33G$!X RXZRFRF -1YBCP&0M2D2.J*09R/='Z4NN!YZ M!O@4DI+_H!(,$AEC9ZH!31(&$+O'..&M'TGQT"K%3]XL(-:>72T0$Q 'A-Y(2 MX+AOF"0@ZL'&OR3:CF7A; C =0M"+PJ0*.T:?",Z2'*-EA8D:+1LI9:9. P! M,@E=09X/X"J)6.*SBO8C=(UO2; @,P=*#S;BA@).UHQ!XMF4A$;!JYG'>"9T M$0P%0&>-D KO1-85,<'":])7"]M >3!GZ41$(($834YS-#6*E@)>#0,@ZWPQ M(E3.7#'Q\4+T^45SOC1MQ)>$''=LB3@BEA(EL>((M)YD3A98!43&#QVY_X8I<64C15.SC(DW0*YII>5U7JKT/WN Z60WCNY,8F#^)P\-%)]^__CYP]HYRN%( M@6#A..%\>"['V>T=[JJ)]V!F[0+6G^V/4YU-^>GX][/=WR[/CO_X' MX0)3ENN0S'F$VYB+U$>3H@P[,&S%C.!+X6P2!4%TETA;%#*(%LHP4DUFIY:; M#\)@_Q89=I77+<^YU&ZST/\WBW$Y)\O2$4JQS/8]XSLA0RGZZ<;2L4Y+EF^U M-P&;YP&<;_R'H/,U >H'#D@Y*XN*.;%B0^Y[NJ\) 2QB% ,/D/_V@6Z0=-C& MGQSY!_F;7_2.2L)J[H_6R8?F=-M'FX3FH$=51=8@C+SH&7]T"X79@Y>DJECV M9/.\%'REG.N,,]*;5DABYW,'C),2Y\9)O?;B$H:7!0.D[)#>>CI]2=Y196&I+CLD5\XG]% M.J:I#FLY%!F&ZA(L"_0DI-RC)(I'AG(#710&-&30RT/"KE9O!REB@,YQM,NF M9(\DZQNL($#C\!BH,E!*M* )I3B4;\.HW2^&O4$+Q+2-5V%B*3#B@$Q+8_9J MYX- >H>'-.[:==R'.7R'; D:\]>DRX;Y2RT?O.1VIR#!HM/+#=!JCLQH!"QX MXL-/:-<($]$N4*LKD"9QR#/U,X*[^E*^P]1KT-[_7N(U* D4+*==H3D#)%[= M_I /.W;Z+Q]P1]U]^XZ2PK;NOYUW-N=E!7@X.%3@,,B#P]1%\TQ KF-R%-CBD["VJ+:B MII4SDEF4E]SMXQKSRZ=HG;4 P^:&/X3,4M)2#?_LY-_]<#NSWOQ_LA^W>AM'5>:@_[!\@ MV)/XUMU_"!V$=5AT\.;^K6[&N&P^M08KR@*[-:]B7E:TR8$0/X]8U;/@'\WM MMZ##23\P>=9\FI%>BL4-QARB!P #0WP.&D^8(/#9$QM(W31C/X,SST:![\GH M%$9/TFIC%R@''2SK7";X$ [8AT_;@C[G(9R-<*[=KWET>;\S?;319\>CP@)!@O61\P4X#9+VW/ 3!$B(P(,XWXFWWX.4] MLZ)10"(*P#I9!*SME^XH5NP 'S?1LNR%(K]EB&ZR_\#'D@VIY>"E8KP5_(!H M^R_ WF3L2X==F4/&1D^Q'9Z(AUG_WOM 0,;*?7KBSGV,]+\4TB%IVP$MP>LX ML71="NIB):J@]K;RY!%G*+>R42Q&+BA[+.84!)PZV5S"BDJ"P4#PZS.4&#$A M!9W=&6KB<"9AADIY%E.NA22<%(PG34< :SX!F5IHBK$<;%PZ/TED(*/,/:$1 M;B.4L0+0%5UR:5%D:GV$DN>G)K?& M\G:A4 L4K,OA/^BVSE*.AJ G3X#^ 7UZ)Z,2K0 D ^LCX-$ UNB SB0/=3U8 M)#/11(98ANY-D?203Q>HU@RAS])PS=W#7B+K0,I.01FC*49_%ZCOC >PI8 6 M#E18,"TKP[!$?%HM_B:.[D":D+JW61/(* +'H0A7N'4EH:- 0UP#+\,25_A) M^Q@"$Z.[Y)]$,)!#G"D'"MBIOP?&!P/3!73A=:5/G\"<9R^6' M+'D? T)/Q>X'SI [!Q@C@?^*LDV.;T" (]7@%;*MG<*W.Z\QYA+?(-^)EH(0 M4F5,6!(!5AP![3LX.@#ZX<9"1YUX?#&,JU/W5@47WL#P%((2@4 6<["P[TDK M>\=2#U7\J[U'FA2_,$FP=B0B\KUY#DQ8VF10X2@JL\H7W2-+E>20U+F[4 $^ MQB!%3_?;G9?*PLAF8CT3Z3T4;3$1(D=#5DW?A$C4)D3BJ F1:$(D*F%H!3E@ MR[A73MD#:?%C!#RAVU&25\Y?. $!*T0EBZQ/4E0C90O$Z$LQ![FUA;J_RDCK M#EM&),^Q1"3([R-DC)KWD?'KPW^[L_FOUZRK%1[0$0DN<"CC@@$$WP5E+ J( MM5%@,.:=8N@L"9GB'<&;KK';>>S@:Z*CG';*N4_=BF'PT13'+ _5,[8[\IK+*G&02DB8PZ[)["C5%;?%K,1>"U$&TQ@N[7PI56\:]4[ M9N?$)L+R77A>G)&K&'E]4G '$'C"GVA #BE#_!T+%+"(2UD1PX57PB\@K(&L MP?&(@IT$\P"]72$Z!=& BYC*Q+HEK$,R 8>-FC_)TDB9F26H)8,+ MEMR?'0DJO',/Z(0P\"3)/YL.34I&;L1"$IH3@6"A#$:$)(%#J_X=MP+)F2SY% MBO9.OLC"AG(IR\-Y9/V<$.8M@18=:VH MWM$2M!Y:(70/!U>=BT[@.O:91Q/$?@.\YLR$\L)EKNCC00J='57_**&&0,F6 M*WD=M ?K@*C:2Q[6 -!X#0^P\[SQWUJA1J? C]G<$)H>>!E"6@1VYR*O]' M\@D6*9G)\CM1&,J\%5.FL("'YC01?BFBFBF)2(4[)$3"V0&(\4PT4:I7#AJQ2 MJ."25_@.K;P8F4)OK'OR:J%"Z1'IEF/CD M5I_,8ZRXYGKD17&QWM&(8^,P4$'$+"@GJ9]F,F<>X8#BC()%RPH1BK!@4# A MELS1<9(IZQ*6$@BDV)HGJ"-!SB?7'Y>HW!3KU#[BD"4^7!E/-^(;'Z(["'_, M'Q+^GI_41!I9X%XZWP"&W HFS45X]6WH8&*JXF+D>SJJ!Z2"P*V0CY "3;N# M#BM?GA@LJ!BT=&7];:>SXZ!/2!:7UG\G6+5,_(Z 1 MU_BJ=DWE/8C=X4OMFSH VMAT7SZ%=B'(?2UX,P?,M-E)9:I>.]1# MUJS]#Z!+L".]^A_=5O9'-HR]IYKZCY[&BQ ^PK_M].[WVU;;]O@;B."]JRDG MB64'D*_O^&;T5E,UG25=K_4AK35+^[' M:(A= /8/R-@VS6M#D+]53K][O5'LM37TT# M#"N6-!BV>ON5MC"K/P4?#HEX/P$%KXYJ_S.O73>TNC;H>=#?KQEZ-L!0#3#L M=UN#@Z.: <.6MT<[)A]ZT5GS8M]4FJ#T^=[PY;VY3F2&G8I I\RI0I$8S^&/ M?5C54N*6='#>DT/%P1LZZ4I[B72DDVJHL+"BZ]@_BB.O"4 RB6-6#B5W(IO' MT:T_+DL 5+$A(:"/D]Z)X%;;J?G5),/T2U]&TV$17G0;%3+NBO;@7%::23 Q MF?WV QQM4[(Q_W&#K+?".X%'J>N)K,N)U*68I=L)8T5L0%-IY5S#544CLVA3(CDSQ25,N6)! ME7QDE1H5<"=#J-@AH_;4@$KG8BX2[!@BEVJF+:1LWHCH)G;G4UDL6?:& \J"-2FP MN!!70^8R\[F:^_@VEO/ D+I-,=/0KM@-L<&>3%I[<6AELK$/RLIMLVO<.M+&F6[6A=K79;F>[:VO0[2M(3OZ,%3:,:*U3JB6H:.4DTD!H'94 M!)U\%G)Y%WR-&R?@^6&4J4D9;X&P=!.8?(BXP3M9,U>KU\WCQ58I44[&=CQDT.Z:H< MTGZGR2%M(K6L[IR:2?+.%<190N$LS!\"J5X<6@TU?U['+/%9CSY<5GG4IQD2OEP@I-X#-7 M1"E"%O+$P0=<8,P^$:O<@KZ>%_W!D2Y>EELYU4^:",I70KE'A G_8"J) MZJU108I=#G!VJ0]L;DTK.GZ71#7:97*/5("9ZJ+#W03U[_VC?1V--LJP<\B >%I^K"V9 85@=R.'U.JDO4)9/T>4U<]W*1+&SXAXEJ M8Y&"1/[]@=MMYY/N*,C]G.#&I5Z,J@ 7S:2X3* \'<;O94+?,M!K6PD(NT$G MHK:+RA+"0 B4).9RC K83-NK,,JU+"B:>$I'5Z=I)4WB18"LJ)I,F41%*GL' MFZ8F<-1"DRO:EIT$4*5]Y>L*PX%A5$:9!8HPIN:M;(5\Z3A?O+-QA*V2,UUJ :,D^H0*.$=3;YR4HP6E+Q*,'P?9)[%-HCPW,9ZJ6ZXKB MMUPT@5LT27EHHRO'QNRP?K1.DE/@<_NJ[?Q^?/Q),5"D7EPG](NP*LKBA?\K M&\M^4RP/4XED:41%&!)C30%16905/"W%KV44@9PZH_0ME-Z"*)$U;KD)YXVE MX5!S53,<%X'&0D*[W ?;%(&6G7^Y *K>A5T/(9U&>4W/TL5:S \"(MQJ'S=1 M-,8&Z# (YHT S9=JG:HD ,]82\;;@ ?E]=C:;TYKLLI4FV;%+B;U4&D2;AM$ M->GMC2#;LHK56FUJ22H);8&)!1Y30 )S)V6C4N7XTWV)(F[>Y28@5QF/$!4Y M\&,OFR$64^];OG1=4)CE;P0L*5IB>RYV,G[A&MD*X"#F3X!E) MT9SSR((XMG.EW=_AJR0[H3-19<=2DUTV4I2LADME$0417'^@))2#&VR0JD%# M%_4-J1G( B^EYYSK3XZB/1I=),%C2Y'Z:\4]88-R4]P[U[YNN9EIPUV6N,O% M9.+L_B:5O:NI .7FV)*4MTQ8*HCPD\FNTH,3.IJ<$C%^@/["@$Y0CO;&V**C M6)WF"Q9+D!W0L5V6:GD>I"9:KYA*IMNZ6)E_ZN3'#8EU'RUQ5U MWUNFH'>KW$Q@F0],K7/:HY^8@!=)_%0LR)-+=P_./"WS0BYE@ZY*_5P1BIU& M\]+ :#F)A+QO=4L58?[>(P+R0 V?L>O0^N0DN4 W2Z,G7N#?/Q]_O#Z_/KX^ M_\>9<_SQU($OWJN_3\^O3MY?7'V^/+MRCG^[^'SM?#B^_//LVKD\O_JS;$]; M'H;Y,'X@BWM?8GON+2/^_^0"=D#GHH2%?E!Q4]<8-E7/!6Y@(>AK(R;>?Z#[GP.JX(8?D_E 64Q_/( MU.F.@2@E0C?_72>2DO-&\HNREB!1;'6$L)M)I-:T*N1&'8[5N0&M;5'HHW*2 M,W0U$2BUB4#I-A$H303*XWD 3HJD3Q8^1![3=M 7\$Y3'RS5$V=2!R6SP3S" M]K-X"*49-RG25+*P8/RQLNI3(\_R^BFE9890^1Q',]0UO>77 MK.%E/ST8' B;6"AN@(($"UZB/ MX)(H_*IX9?8$TG:T];-OU+5$VYLA ' M9*Z!/_/)EL>.>-2= BH':NHVF9AK[K+EPZ Q,F3MA">N \^@C8'7@-"0<]&; M=O?2<(GZG(=-BU/\7M7+#; JS@V5_AU'9$ RD:EX0@EH=6[>J&&S[4*G1-Q- ME*6Z'WS)(;2LPE)4Q6JIA5C.'".-/^HV]0'P\J\C#C&G?DWH:X1%L<=Y1A&;7;R)?%+&?NOZ)8@B:/;F!#43I^ M50'KQF%TNO962T8+4 =0UY-$M" 4*G&C.J#\'F39QNN"MX&OR,0;JIH'=)T;M>%T6:C_U,([E8AE\W64J$9C M2V0'[;\@+0&RX#JELT4*V+":KLY MT)]HAF'Q%I>2=\?A(/+\C5. [5>ZCRB3<6(6!I;8A*VA]]X*Y?EKZP[7TI!U M2T90_;;%\75@P#]I?53N4,].$4.)5OL4&.+(ULG 12BG/MWT%'M:Y;!A2RC< MN5)0UU*X@KZM93V)(4I,L"R;^8+*+*7EE6$:#TVF?K[;L0G:-.$AC(RYX(X[ MXGCDU,[7;L:UZ@JX]T)SOCD9=2,;V.%K:Q?1,EZS/%H, 2UP^%R=R)R=X<6@ M?;BV*K$,JE0X4"Q"O@GX-';:)[33#A!9ZFJH/;GX>'UY\?Z*C+2?+B].SD[1 M+MM88;_3"GMFO/V IZ'9@\SU M(-26E4(PB1"1>L(-+.#URPPPM-MW=[O#5^*U15FT*'O,T3[=H_Z@9?7O:>6Z MM]A/FYXMOTF_-SN47>JI,.7:O:0P&OD7*[K*Y:L<7O*7Y;YJH:X"%!.#[J?1 M':>(DK6 0S8P"(*;;X];Q+%E#"?H2\0I5( #;0.3(25[#XF(._*" K< M!,:SNB#@+U3[&6RE!8-\&4=W,#0^0GU8["B#A *W'!''V+87,Y9!Z?R"!=YU M_"Q62=8 (^?A< ^,0C#]F8#R^G"(&7GJV6J<1)Q3D) M')Y#!3Q+%/>YBQRE M-\Y%-,?SYAS*F184'+2.Q'0UN3-M.^^X''9+5LM&.9AB1(JG/LN0@8M)H(*1 M,!Y9WYJ$-N7")&4 Q%U?!OUR3K-)I9^8DZ!Q1T('\@@9I^3?*L,&ZD11HA)> MS)[R84: TF<7W-C\W44+I$2X;VH$(,OSJUSR^]'7D9V726P)78,G>(:6=L\Z M(;4] C&!P$C-IM[OLI\93*.(D=ETS 292 MLM.01Y-1# L#*>=9T!&/!7;9H# 4#\5Z6#H"990[56JT;9IS3,4F)\8]/ CU MK;"F;T%NLI @=F^%>/^P^,6SBSV ;3(@,O;;<5YG"E[8=\:'^S"&MP4G?IPH M.R;16YL9CUZK4[-Y*Q*9Z[.KZQ5TASJ'VW0'37X9F5C@6H45:ZCO1(1C'9?& M28G4P4DQ +MWIGRA>+.;D3$@.*;=EFL;+5O%91-/YSQ$?+3U;:O=C+A*$VAJ MMN6X*KJUA')@BY-@*X@!,K>3J2\F '_"R^AD+K"0AV BSK\9#X_Z+7]WWW,- M)7;D8B2ECDBZ WE(U9-Y&+,TH874UPZ84=FHV(("I68L8^(M6MP,KE!V0O_N ML^J^^2):4CPWTHO/C:$T!"Z%C+IFE38#UL8U[@X4R9/P9RO"05%2D.Q8"@R" M,KP4;V8)( 4@ PF: GS92*F"H<6XY+1HN_XHL_J;Q\*:59G:RE:4;^5 T@+P MF[Q=V13/Z'=DA_=MP,@/1:$(U3D_5)A&,F7J,!X-!QL7KSQ\&GM3/_]EZ/]@Z-?:VA?LMJB60D+'.6-ZI[,,N+$ M(\,Q""Z[KUE9D>3'T\27G$O\HVS"J7^QDB),WLN2 R37:8W2/['+I&[?ARXK M[CZ4<+I'9I&^/:PG$(5$P%2:*TDZ(X&]ASCWW;A8E2':\C/KLFSV4,04DY2T MN>DBD8YS\DPHUW26:'6V= AIB&=:SHD>=#S\EXQ!EK6='$(U38(383FF&ZM? M(9[<#H=>Q?A*.;064>Y/'?DV7JCZ1YO\#5#@8B&5@+%BQ3J5PK1Q_ABUG:X* M[OZ[[J E4P4!G%7"Q=_UTJ00OI(OYU7[@EI?$!5)?%=2*S!!')*MP>'C:>R=(S65[3.P6Z;Q*C_P984TGB8R=7$2YPKM4T:4JEO MO66.N51JV_995(U%A\"=8VQCN\BQ)RV7&K3)UV;26A]F04HCC9.B' .%O2A$ M'S]L.Q6'X^OSBX\5$)>?P3I4 M56A1M\ZA1>_%#2 K>?P$7E;2!!4M,;%WF"U(PA1:H_"_LIH:FF\H2Y$(94!' M.3='*:DTU]QG!S?JWE@ 9$4].55?P\0I8S1X<"LM_^'",+.EV6HAH'W_+!IK MCML0C/O[ MN7;.!+7>Y+B. /X0&KJ^DHSE567(E[%F2:Z27C%S,IFZL9"QAK-9%'*-:7I, MY6_:'ERTHF!%4D#U--"N?;3=QSZ9\OEU+DZMS?&EA:EK[[B5YE)0Y:[QU9T\ MB"B3.7:?DZAR-'SY'3!3M(XN49Z\]5Y1CE)B9);^!U8H"V]V5M&GQ^[<^11= ME?MXSBL[B8\"U_M28?].5%+) O%4W;B;;N^/W$K].J*^J[5L\_Z1$M=KNCB@ M[%?$3VJZ/E4T_6W&NO:]AFPS:7D<_4\Z@IB)]2H9J:+NX?V T M#98U75^M&?LU^N$^N(NZ'M[_$ZGS6UW10DM%=3V]SQB65=.UH<^!V+H3U76) MBJW7C:M;SK)U;LW'=AN4Q,8C8^UU!BVGUS^$?PV'KW^H,)C+;-KEZ'[J^[K9PU> M/X>DU^VVN_LUA(Z:H\T30_ M$"J>:(.EM[I>2JRX_-1/5%JECD7PR195N\HK'$QN2G]0J50L9IBZ7_G;*.!V M/B.X )?KTYOJC(6R(%1])+&;?Z^H$M(4<5>E7(:TA@M5DJG;D]UE[ (L%$], M]:2POJX\2%7&YL=WL&U8__J.ZS6J5M^ZZ[&:F&OY&2_90L1J_%;L)4LCIQC(,S8*D8_ MI;XP#U*%J@#@)W:=J_95F_LL\MA^Z$7Q/*(6BA;$O7?O"+AHP7IH.8@<6?;5 MBVX$U36E\C=J\I8C7.QYJ\[I"HB67CN]AQT$5>%?[OV7>S0Q/27/0^K='(^I M@)@NP;5\]+(R%[W>/(Q;13;Y*EFTEF:I/ @ MMV.<^Y@=:VKY' < K%SPYZH];Q_C:89T3@"&SK\B'X&40$<=L0TOYFWK>G#] MW,\8:X>K[@YTV]:/!A+U4F55\4T7W':.$ZHE:+6^HY:'O)VYZ]L@L'R^+?N MG3L7NR0EV!6C>WC0&O1[JRH>Y<&YA4MP;BG]YT6GW>GF#H@II;E\K+ZDJ">W M2:(9X3"2#%NE(ZJ&CO@J9G/:!)5/XQI7[K1FE;PR M74_[;:RLYDRX,66NQE/$119=[]\94&!9D5O@*<4"R];! MM>Z'_@'[[ERY$Y$NK":FY:GB6X]7J>K !=MMFO/4ICE/OVG.\V.;\^"'_\J/ M8/WJ?P7X#3]F,R!"'O4P@,U["&HGA M*%YC\YDGHKH5<9I3TXEDS;U225R^6E47E[O5K7FGT'6XY=#[N48]NXGP=OVO MNU-_#"CQB]?M]OJ]@][P8&>SYPXW?.YHL^?V.SMOD1#K;C\E_REHWG_%QE#8 M%Q KBD=8+9@:."?%IC%*5UYS7NCYPP->5J/M3C)4WF/-($?] 0WSVG''T5PV M(N8>MZ0ON\X.-4A?-T9G-*0Q=M<]Q(M-8RK8Z[AQC"M$]7N'^SKOP$GN_N"I M6CO8X)K,8KA%[O*ES_P^8C7H'-+(KURR75R*FRR05JC=/[__&I@4:J%J+\>[ M-F%VW\IQEHA"C32?QXJ3V0WY' V-R_TJW 1DG 0^KWC #:@/4BJ2%0_,([9% MK:F;3/"U_U@:UW,ZF;.O4W_DIS6WF#!^/02I'N.N[.KKRR72"TJ4@IEU"/J( MP6U+H%N&_&H'AX\:\%%58%VWTUZ;S;'N!(YZS^((WKC.-$8=:IJF\U_V]N[N M[MH@(+5OHMN]8Q#A_%N1[(GQC1OOC=W4W>MV^ON]_=X>:)O=0?_@8'#4&W0Z M_?Y19T]\_=_]7G^X?]B>IK.=G+@%;"=VO?07P;3AUYV']&R\$G-7^AZ,ZX31 MF=T .C%ZJ*3-D4COL"&,=!.>2)<<#H'NH"LO2K%9?2?>]?Y/@WB/@'@'@_U]0KS^P>'@T1&/O(UE?LLR7[R%9*U2_WS>OU[F M1F=T=LGCF0\LR*-IKT'3)T+3?H.ECXJEAYW][B-CZ7M1CIR*!RX%6.00[U*X M@7-&[G/X.6X'C(5)@X5U <%^MQ%2%18B#NT?#GK[F^#0"1[,!(Z&(TTFSLG4 M%Q/G[*OP,HR3A_. [H-STL6^@ MO#Y7W.\UM+P(Y1MI+1O3\DD6AWXR+80T=@^=SZ!AG+2U+Z;;'W9:*.0H3XG] MN'KHJ+.O70%N/')#D>Q>? W$0GD!>IU.K\&>)\2>AD<4L.?H47E$@SW/%WNZ MG6[[_./5EB/0>8AZL_-_?[M\[UR[7Z,PFBV<\Q#C_3WAG$9>ADIT Y!/!)!7 M)W\T +D,D&=?4Q%2U_LK;RIF;@.83PV8)\?O&\!N\\P/AO.+\#AE$ M8H,T5T@ %;QX3)*%6;OOEY7UN/YP>_:*C-/"$6;5I9\'J=>%<[<4[]G"Z@& ML*Y;/\J28.%,@$B,,3[&K@:#5FRL>,'T((WL'[%N1O?@U\0YR>(8*Z)P40DL M6_$.)G,.=_]T"C&H!RH&E2C2QZCM=#K=W?Y^MPN_\ *6GT7RE*L<,Q6Q "H% M2Z4Z&"+TQ'91JQ<+'LF4=%*6J1 3Y6X"./,_(2TN2AV_#2!,W,G$ZI=-MGSH_>KE_R\ZC:\\DB[$A(D6+ZL:Q)=W\^ M.2:-M^2+7&PO1/:1.$"$%X[G9@E6+43>$K-(!=.,A)/ <6.:?T@$?22F;C!1 M AO=BWP ZU^(# MQTGANEDZC&+8[KJ: 5T5YMQLS@;JFW0[K80D:=.JQCN'C MGD=E07VCM\LY=/>DSS?0^-RAL>[VT>;VF]NO_-2;VW\&MU\5WSUU4_'+M]JP M'AGR*I,]-E?M/K@+YRB7"/RM9_=W\CNI=R_F? MN+WB))\UOC?4OA[PNP(@&TC<6DA\XZ/[#WM8A"EY#U:D6;[9\]\V,+*=,%(9 MM_7?OOH4^Z'GS[%D21$D7R-,6L;&!CRW$SRW2W5J;G^;;[]1G'\*Y:]1G+]/ M<3[-0@^>_]T/9E$6-QIS0^8K(WP%2&Q <&M!$-21%554X-U8N-C>*N9JP\*+ M1>K&BT9KWEYPJ8?6O 2KKQDF?X*@SO?'5]>[)B9Q99AF_<(OAQN'7\I/\/'- M'AW[?[W9FZ:SX.W_!U!+ 0(4 Q0 ( />!J5BC$ C(H08 /4> - M " 0 !E>%\V-C@T,C8N:'1M4$L! A0#% @ ]X&I6+>9 M13&;!@ (AX T ( !S 8 &5X7S8V.#0R-RYH=&U02P$" M% ,4 " #W@:E8S)48M[4# ":"P #0 @ &2#0 97A? M-C8X-#(X+FAT;5!+ 0(4 Q0 ( />!J5CL64;KIP, '\+ - M " 7(1 !E>%\V-C@T,CDN:'1M4$L! A0#% @ ]X&I6*>-8#&$ M%P ]RL! !$ ( !1!4 &EN='0M,C R-# S,S$N>'-D4$L! M A0#% @ ]X&I6+RK/QW4$ V H! !4 ( !]RP &EN M='0M,C R-# S,S%?8V%L+GAM;%!+ 0(4 Q0 ( />!J5C=))S4U5P *TH M" 5 " ?X] !I;G1T+3(P,C0P,S,Q7V1E9BYX;6Q02P$" M% ,4 " #W@:E84+HE.U.& "B0< %0 @ $&FP :6YT M="TR,#(T,#,S,5]L86(N>&UL4$L! A0#% @ ]X&I6)XJ%^.O80 [,@( M !4 ( !C"$! &EN='0M,C R-# S,S%?<')E+GAM;%!+ 0(4 M Q0 ( />!J5@36K7Y;X8! %X&%P 4 " 6Z# 0!I;G1T F,C R-# S,S%?,3!Q+FAT;5!+!08 "@ * 'D" /"@, ! end XML 93 intt20240331_10q_htm.xml IDEA: XBRL DOCUMENT 0001036262 2024-01-01 2024-03-31 0001036262 2024-05-01 0001036262 2024-03-31 0001036262 2023-12-31 0001036262 2023-01-01 2023-03-31 0001036262 us-gaap:CommonStockMember 2023-12-31 0001036262 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0001036262 us-gaap:RetainedEarningsMember 2023-12-31 0001036262 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0001036262 us-gaap:TreasuryStockCommonMember 2023-12-31 0001036262 us-gaap:CommonStockMember 2024-01-01 2024-03-31 0001036262 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-03-31 0001036262 us-gaap:RetainedEarningsMember 2024-01-01 2024-03-31 0001036262 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-03-31 0001036262 us-gaap:TreasuryStockCommonMember 2024-01-01 2024-03-31 0001036262 us-gaap:CommonStockMember 2024-03-31 0001036262 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0001036262 us-gaap:RetainedEarningsMember 2024-03-31 0001036262 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0001036262 us-gaap:TreasuryStockCommonMember 2024-03-31 0001036262 us-gaap:CommonStockMember 2022-12-31 0001036262 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0001036262 us-gaap:RetainedEarningsMember 2022-12-31 0001036262 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0001036262 us-gaap:TreasuryStockCommonMember 2022-12-31 0001036262 2022-12-31 0001036262 us-gaap:CommonStockMember 2023-01-01 2023-03-31 0001036262 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0001036262 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0001036262 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0001036262 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-03-31 0001036262 us-gaap:CommonStockMember 2023-03-31 0001036262 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0001036262 us-gaap:RetainedEarningsMember 2023-03-31 0001036262 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0001036262 us-gaap:TreasuryStockCommonMember 2023-03-31 0001036262 2023-03-31 0001036262 intt:AlfamationMember 2024-03-12 2024-03-12 0001036262 intt:AlfamationMember 2024-03-12 0001036262 intt:AttheMarketIssuanceSalesAgreementMember 2023-05-11 2023-05-11 0001036262 intt:ElectronicTestMember 2024-01-01 2024-03-31 0001036262 intt:CityOfRochesterAndStateOfNewYorkMember 2022-03-31 0001036262 intt:CityOfRochesterAndStateOfNewYorkMember 2024-03-31 0001036262 intt:AlfamationMember us-gaap:CustomerRelationshipsMember 2024-03-12 2024-03-12 0001036262 intt:AlfamationMember us-gaap:TechnologyBasedIntangibleAssetsMember 2024-03-12 2024-03-12 0001036262 intt:AlfamationMember us-gaap:CustomerRelatedIntangibleAssetsMember 2024-03-12 2024-03-12 0001036262 intt:AlfamationMember us-gaap:TradeNamesMember 2024-03-12 2024-03-12 0001036262 intt:AlfamationMember 2024-03-14 2024-03-31 0001036262 intt:AlfamationMember 2024-01-01 2024-03-31 0001036262 intt:AlfamationMember 2023-01-01 2023-03-31 0001036262 us-gaap:OtherCurrentLiabilitiesMember us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2024-03-31 0001036262 us-gaap:OtherCurrentLiabilitiesMember us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2023-12-31 0001036262 intt:AcculogicMember 2024-03-31 0001036262 intt:AcculogicMember us-gaap:FairValueInputsLevel1Member 2024-03-31 0001036262 intt:AcculogicMember us-gaap:FairValueInputsLevel2Member 2024-03-31 0001036262 intt:AcculogicMember us-gaap:FairValueInputsLevel3Member 2024-03-31 0001036262 us-gaap:InterestRateSwapMember 2024-03-31 0001036262 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel1Member 2024-03-31 0001036262 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2024-03-31 0001036262 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel3Member 2024-03-31 0001036262 intt:AcculogicMember 2023-12-31 0001036262 intt:AcculogicMember us-gaap:FairValueInputsLevel1Member 2023-12-31 0001036262 intt:AcculogicMember us-gaap:FairValueInputsLevel2Member 2023-12-31 0001036262 intt:AcculogicMember us-gaap:FairValueInputsLevel3Member 2023-12-31 0001036262 us-gaap:InterestRateSwapMember 2023-12-31 0001036262 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel1Member 2023-12-31 0001036262 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2023-12-31 0001036262 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel3Member 2023-12-31 0001036262 intt:ContingentConsiderationLiabilitiesMember 2023-12-31 0001036262 intt:ContingentConsiderationLiabilitiesMember 2024-01-01 2024-03-31 0001036262 intt:ContingentConsiderationLiabilitiesMember 2024-03-31 0001036262 intt:ElectronicTestMember 2024-03-31 0001036262 intt:ElectronicTestMember 2023-12-31 0001036262 intt:EnvironmentalTechnologiesMember 2024-03-31 0001036262 intt:EnvironmentalTechnologiesMember 2023-12-31 0001036262 intt:ProcessTechnologiesMember 2024-03-31 0001036262 intt:ProcessTechnologiesMember 2023-12-31 0001036262 us-gaap:CustomerRelationshipsMember 2024-03-31 0001036262 us-gaap:PatentedTechnologyMember 2024-03-31 0001036262 us-gaap:PatentsMember 2024-03-31 0001036262 intt:CustomerBacklogMember 2024-03-31 0001036262 us-gaap:ComputerSoftwareIntangibleAssetMember 2024-03-31 0001036262 us-gaap:TradeNamesMember 2024-03-31 0001036262 us-gaap:TrademarksMember 2024-03-31 0001036262 us-gaap:CustomerRelationshipsMember 2023-12-31 0001036262 us-gaap:PatentedTechnologyMember 2023-12-31 0001036262 us-gaap:PatentsMember 2023-12-31 0001036262 intt:CustomerBacklogMember 2023-12-31 0001036262 us-gaap:ComputerSoftwareIntangibleAssetMember 2023-12-31 0001036262 us-gaap:TradeNamesMember 2023-12-31 0001036262 us-gaap:TrademarksMember 2023-12-31 0001036262 intt:EndUserMember 2024-01-01 2024-03-31 0001036262 intt:EndUserMember 2023-01-01 2023-03-31 0001036262 intt:OemIntegratorsAndDistributorMember 2024-01-01 2024-03-31 0001036262 intt:OemIntegratorsAndDistributorMember 2023-01-01 2023-03-31 0001036262 intt:ThermalTestingProductsMember 2024-01-01 2024-03-31 0001036262 intt:ThermalTestingProductsMember 2023-01-01 2023-03-31 0001036262 intt:ThermalProcessMember 2024-01-01 2024-03-31 0001036262 intt:ThermalProcessMember 2023-01-01 2023-03-31 0001036262 intt:SemiconductorProductionTestProductsMember 2024-01-01 2024-03-31 0001036262 intt:SemiconductorProductionTestProductsMember 2023-01-01 2023-03-31 0001036262 intt:VideoImagingMember 2024-01-01 2024-03-31 0001036262 intt:VideoImagingMember 2023-01-01 2023-03-31 0001036262 intt:FlyingProbeAndIncircuitTestersMember 2024-01-01 2024-03-31 0001036262 intt:FlyingProbeAndIncircuitTestersMember 2023-01-01 2023-03-31 0001036262 intt:AlfamationMember 2024-01-01 2024-03-31 0001036262 intt:AlfamationMember 2023-01-01 2023-03-31 0001036262 intt:ServiceAndOtherProductsMember 2024-01-01 2024-03-31 0001036262 intt:ServiceAndOtherProductsMember 2023-01-01 2023-03-31 0001036262 intt:SemiconductorMarketMember 2024-01-01 2024-03-31 0001036262 intt:SemiconductorMarketMember 2023-01-01 2023-03-31 0001036262 intt:IndustrialMarketMember 2024-01-01 2024-03-31 0001036262 intt:IndustrialMarketMember 2023-01-01 2023-03-31 0001036262 intt:AutomotiveMember 2024-01-01 2024-03-31 0001036262 intt:AutomotiveMember 2023-01-01 2023-03-31 0001036262 intt:LifeSciencesMember 2024-01-01 2024-03-31 0001036262 intt:LifeSciencesMember 2023-01-01 2023-03-31 0001036262 intt:DefenseAerospaceMember 2024-01-01 2024-03-31 0001036262 intt:DefenseAerospaceMember 2023-01-01 2023-03-31 0001036262 intt:SecurityMember 2024-01-01 2024-03-31 0001036262 intt:SecurityMember 2023-01-01 2023-03-31 0001036262 intt:OtherMultiMarketsMember 2024-01-01 2024-03-31 0001036262 intt:OtherMultiMarketsMember 2023-01-01 2023-03-31 0001036262 intt:TexasInstrumentsIncorporatedMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-03-31 0001036262 intt:TexasInstrumentsIncorporatedMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-03-31 0001036262 srt:MinimumMember 2024-01-01 2024-03-31 0001036262 srt:MaximumMember 2024-01-01 2024-03-31 0001036262 intt:AlfamationMember intt:WarehouseAndOfficeSpaceMember 2024-03-31 0001036262 intt:AlfamationMember intt:WarehouseAndOfficeSpaceMember 2024-01-01 2024-03-31 0001036262 intt:LeaseFacilityInSingaporeMember 2024-03-31 0001036262 intt:EnvironmentalTechnologiesInGermanyMember 2023-03-31 0001036262 intt:ProcessTechnologiesInEuropeMember intt:AutomobileLeasesMember 2023-03-31 0001036262 us-gaap:LetterOfCreditMember intt:MtLaurelMember 2024-01-01 2024-03-31 0001036262 us-gaap:LetterOfCreditMember intt:MtLaurelMember 2024-03-31 0001036262 us-gaap:LetterOfCreditMember intt:MtLaurelMember 2023-12-31 0001036262 us-gaap:LetterOfCreditMember intt:MansfieldMember 2024-01-01 2024-03-31 0001036262 us-gaap:LetterOfCreditMember intt:MansfieldMember 2024-03-31 0001036262 us-gaap:LetterOfCreditMember intt:MansfieldMember 2023-12-31 0001036262 us-gaap:LetterOfCreditMember 2024-03-31 0001036262 us-gaap:LetterOfCreditMember 2023-12-31 0001036262 intt:October2021AgreementMember intt:MTBankMember intt:TermNoteMember 2021-10-15 0001036262 us-gaap:RevolvingCreditFacilityMember intt:October2021AgreementMember intt:MTBankMember 2021-10-15 0001036262 intt:October2021AgreementMember intt:MTBankMember 2021-10-15 2021-10-15 0001036262 intt:October2021AgreementMember intt:MTBankMember intt:TermNoteMember 2021-10-15 2021-10-15 0001036262 intt:AmendedLoanAgreementMember intt:MTBankMember intt:TermNoteMember 2022-09-20 0001036262 intt:AmendedLoanAgreementMember intt:MTBankMember intt:TermNoteMember 2024-03-31 0001036262 intt:AmendedLoanAgreementMember intt:MTBankMember 2024-03-31 0001036262 us-gaap:RevolvingCreditFacilityMember intt:October2021AgreementMember intt:MTBankMember 2024-01-01 2024-03-31 0001036262 us-gaap:RevolvingCreditFacilityMember intt:October2021AgreementMember intt:MTBankMember 2023-01-01 2023-03-31 0001036262 intt:October2021AgreementMember intt:MTBankMember 2021-10-15 0001036262 2022-09-20 0001036262 intt:October2021AgreementMember intt:MTBankMember intt:TermNoteMember 2021-10-28 2021-10-28 0001036262 intt:October2021AgreementMember intt:MTBankMember intt:TermNoteMember 2021-10-28 0001036262 intt:October2021AgreementMember intt:MTBankMember intt:TermNoteMember 2021-12-29 2021-12-29 0001036262 intt:October2021AgreementMember intt:MTBankMember intt:TermNoteMember 2024-03-31 0001036262 intt:AlfamationMember 2024-03-31 0001036262 intt:AlfamationMember intt:DebtInstrumentLongtermFixedInterestRateDebtMember 2024-03-31 0001036262 intt:AlfamationMember intt:DebtInstrumentShorttermVariableInterestRateDebtMember 2024-03-31 0001036262 intt:The2023StockIncentivePlanMember 2024-03-31 0001036262 intt:The2023StockIncentivePlanMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:CostOfSalesMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:CostOfSalesMember 2023-01-01 2023-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:SellingAndMarketingExpenseMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:SellingAndMarketingExpenseMember 2023-01-01 2023-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:ResearchAndDevelopmentExpenseMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:ResearchAndDevelopmentExpenseMember 2023-01-01 2023-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:GeneralAndAdministrativeExpenseMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember us-gaap:GeneralAndAdministrativeExpenseMember 2023-01-01 2023-03-31 0001036262 us-gaap:RestrictedStockMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember 2023-01-01 2023-03-31 0001036262 us-gaap:EmployeeStockOptionMember 2024-01-01 2024-03-31 0001036262 us-gaap:EmployeeStockOptionMember 2023-01-01 2024-03-31 0001036262 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-03-31 0001036262 intt:EmployeesMember us-gaap:RestrictedStockMember 2024-01-01 2024-03-31 0001036262 intt:IndependentDirectorsMember us-gaap:RestrictedStockMember 2024-01-01 2024-03-31 0001036262 intt:IndependentDirectorsMember us-gaap:RestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember intt:RestrictedStockVestingInThreeYearsMember intt:VestingBasedOnPerformanceMetricsMember 2020-08-01 2020-08-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember 2021-03-10 2021-03-10 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember 2023-01-01 2023-03-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember intt:SharebasedPaymentArrangementVestingOnThirdAnniversaryOfGrantDateMember 2024-01-01 2024-03-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-01-01 2024-03-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-03-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2024-01-01 2024-03-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2024-03-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember 2021-10-01 2021-10-01 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember intt:VestingOnJanuary12025BasedOnPerformanceMetricsMember 2021-10-01 2021-10-01 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember intt:VestingOnJanuary12025BasedOnPerformanceMetricsMember 2023-01-01 2023-12-31 0001036262 intt:MembersOfTheSeniorManagementMember intt:PerformancebasedRestrictedStockMember intt:VestingOnJanuary12025BasedOnPerformanceMetricsMember 2024-01-01 2024-03-31 0001036262 intt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember intt:PerformancebasedRestrictedStockMember 2022-03-09 2022-03-09 0001036262 intt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2023-10-01 2023-12-31 0001036262 intt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-01-01 2024-03-31 0001036262 2023-03-08 2023-03-08 0001036262 intt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember intt:PerformancebasedRestrictedStockMember 2023-03-08 2023-03-08 0001036262 intt:ChiefExecutiveOfficerAndChiefFinancialOfficerMember intt:PerformancebasedRestrictedStockMember 2022-03-08 2022-03-08 0001036262 intt:PresidentOfEnvironmentalTechnologiesMember intt:PerformancebasedRestrictedStockMember 2023-05-08 2023-05-08 0001036262 intt:PresidentOfEnvironmentalTechnologiesMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-01-01 2024-03-31 0001036262 intt:PresidentOfProcessTechnologiesMember intt:PerformancebasedRestrictedStockMember 2024-01-16 2024-01-16 0001036262 intt:PresidentOfProcessTechnologiesMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-01-16 2024-01-16 0001036262 intt:ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMember intt:PerformancebasedRestrictedStockMember 2024-03-06 2024-03-06 0001036262 intt:ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-03-06 2024-03-06 0001036262 intt:ChiefExecutiveOfficerChiefFinancialOfficerAndDivisionPresidentsMember intt:PerformancebasedRestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2024-01-01 2024-03-31 0001036262 us-gaap:RestrictedStockMember 2023-12-31 0001036262 us-gaap:RestrictedStockMember 2024-03-31 0001036262 intt:EmployeeStockPurchasePlanMember 2021-06-23 0001036262 intt:EmployeeStockPurchasePlanMember 2024-03-31 2024-03-31 0001036262 intt:EmployeeStockPurchasePlanMember 2024-03-31 0001036262 intt:EmployeeStockPurchasePlanMember 2024-01-01 2024-03-31 0001036262 intt:EmployeeStockPurchasePlanMember 2021-10-01 2024-03-31 0001036262 intt:The401KPlanMember 2024-01-01 2024-03-31 0001036262 intt:TheAmbrellPlanMember 2024-01-01 2024-03-31 0001036262 intt:The401KPlanMember 2023-01-01 2023-03-31 0001036262 intt:TheAmbrellPlanMember 2023-01-01 2023-03-31 0001036262 us-gaap:OperatingSegmentsMember intt:ElectronicTestMember 2024-01-01 2024-03-31 0001036262 us-gaap:OperatingSegmentsMember intt:ElectronicTestMember 2023-01-01 2023-03-31 0001036262 us-gaap:OperatingSegmentsMember intt:EnvironmentalTechnologiesMember 2024-01-01 2024-03-31 0001036262 us-gaap:OperatingSegmentsMember intt:EnvironmentalTechnologiesMember 2023-01-01 2023-03-31 0001036262 us-gaap:OperatingSegmentsMember intt:ProcessTechnologiesMember 2024-01-01 2024-03-31 0001036262 us-gaap:OperatingSegmentsMember intt:ProcessTechnologiesMember 2023-01-01 2023-03-31 0001036262 us-gaap:OperatingSegmentsMember 2024-01-01 2024-03-31 0001036262 us-gaap:OperatingSegmentsMember 2023-01-01 2023-03-31 0001036262 us-gaap:CorporateNonSegmentMember 2024-01-01 2024-03-31 0001036262 us-gaap:CorporateNonSegmentMember 2023-01-01 2023-03-31 0001036262 us-gaap:CorporateMember 2024-03-31 0001036262 us-gaap:CorporateMember 2023-12-31 0001036262 country:US 2024-01-01 2024-03-31 0001036262 country:US 2023-01-01 2023-03-31 0001036262 us-gaap:NonUsMember 2024-01-01 2024-03-31 0001036262 us-gaap:NonUsMember 2023-01-01 2023-03-31 0001036262 country:US 2024-03-31 0001036262 country:US 2023-12-31 0001036262 us-gaap:NonUsMember 2024-03-31 0001036262 us-gaap:NonUsMember 2023-12-31 0001036262 intt:AssetMember 2024-01-01 2024-03-31 shares thunderdome:item iso4217:USD iso4217:USD shares pure iso4217:EUR utr:Y utr:sqft utr:M 0001036262 INTEST CORP false --12-31 Q1 2024 426000 474000 0.01 0.01 5000000 5000000 0 0 0 0 0.01 0.01 20000000 20000000 12566024 12241925 78515 75758 P6Y 1 1 1758000000 82000 90000 30000 2010-03-29 2025-04-30 2031-04-30 2010-10-27 2024-12-31 2024-12-31 P5Y P2Y 0 0 P10Y P4Y 171735 228364 P4Y P1Y 2 P4Y 389000 372000 3 false false false false 10-Q true 2024-03-31 false 1-36117 DE 22-2370659 804 East Gate Drive, Suite 200 Mt. Laurel NJ 08054 856 505-8800 Common Stock, par value $0.01 per share INTT NYSE Yes Yes Accelerated Filer false false false 12489642 27331000 45260000 22859000 18175000 31331000 20089000 3868000 2254000 85389000 85778000 8639000 7118000 3932000 3601000 12571000 10719000 7800000 7529000 4771000 3190000 6270000 4987000 33278000 21728000 28819000 16596000 0 1437000 100000 100000 900000 1013000 159527000 134829000 9629000 4100000 2017000 1923000 11395000 5521000 6482000 4156000 883000 1228000 5596000 3797000 1116000 1055000 509000 1038000 2026000 1481000 39653000 24299000 4644000 3499000 10808000 7942000 822000 1093000 1210000 1331000 1126000 0 1947000 384000 60210000 38548000 0 0 125000 122000 56954000 54450000 42858000 42196000 311000 414000 931000 901000 99317000 96281000 159527000 134829000 29824000 31919000 16748000 16867000 13076000 15052000 4590000 4455000 1982000 1904000 6012000 5175000 12584000 11534000 492000 3518000 140000 182000 435000 58000 787000 3394000 125000 577000 662000 2817000 0.06 0.26 12026361 10755729 0.05 0.25 12158297 11088664 662000 2817000 -14000 -99000 -89000 170000 559000 2888000 12241925 122000 54450000 42196000 414000 -901000 96281000 0 0 662000 0 0 662000 0 0 0 -103000 0 -103000 0 349000 0 0 0 349000 187432 2000 2084000 0 0 0 2086000 138838 1000 -1000 0 0 0 0 11200 0 0 0 0 0 0 4925 0 18000 0 0 0 18000 4104 0 54000 0 0 0 54000 -0 -0 -0 -0 30000 30000 12566024 125000 56954000 42858000 311000 -931000 99317000 11063271 111000 31987000 32854000 218000 -214000 64956000 0 0 2817000 0 0 2817000 0 0 0 71000 0 71000 0 474000 0 0 0 474000 90588 1000 -1000 0 0 0 0 13271 0 0 0 0 0 0 25200 0 165000 0 0 0 165000 2292 0 48000 0 0 0 48000 -0 -0 -0 -0 33000 33000 11168080 112000 32673000 35671000 289000 -247000 68498000 662000 2817000 1282000 1176000 176000 135000 28000 18000 349000 474000 8000 8000 19000 6000 226000 -404000 982000 -291000 396000 2038000 -508000 740000 22000 -2000 -447000 -423000 1311000 403000 939000 -654000 -342000 -142000 -782000 921000 66000 -221000 -406000 864000 70000 43000 -121000 0 -15000 -16000 2075000 2484000 18904000 -0 340000 334000 -19244000 -334000 273000 0 1181000 1025000 46000 40000 18000 165000 30000 33000 -874000 -853000 114000 71000 -17929000 1368000 45260000 14576000 27331000 15944000 101000 118000 33750000 24004000 2086000 552000 11796000 18904000 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b></b></p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">1</em>) </b></p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>NATURE OF OPERATIONS</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing across a wide range of markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. We have three operating segments which are also our reportable segments and reporting units: Electronic Test, Environmental Technologies and Process Technologies.<br/> <br/> On <em style="font: inherit;"> March 12, 2024 </em>we completed the acquisition of Alfamation S.p.A., an Italian joint-stock company (“Alfamation”), for an aggregate base purchase price of approximately EUR 20,000 comprised of: (i) EUR 18,000, or $19,674, in cash; and (ii) 187,432 shares of our common stock, valued at $2,086 based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542, or $593 for assets delivered at closing in excess of agreed upon thresholds. The liabilities assumed in connection with the acquisition included debt of approximately EUR 8,616, or $9,418. The acquisition is discussed further in Note <em style="font: inherit;">3.</em> The debt assumed is discussed further in Note <em style="font: inherit;">10.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The consolidated entity is comprised of inTEST Corporation and our wholly-owned subsidiaries. We manufacture our products in the U.S., Italy, Canada and the Netherlands. Marketing and support activities are conducted worldwide from our facilities in the U.S., Italy, Canada, Germany, Singapore, the Netherlands, China and the U.K. We operate our business worldwide and sell our products both domestically and internationally.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">All of our operating segments have multiple products that we design, manufacture and market to our customers. Due to a number of factors, our products have varying levels of gross margin. The mix of products we sell in any period is ultimately determined by our customers’ needs. Therefore, the mix of products sold in any given period can change significantly from the prior period. In addition, we sell our products to a variety of different types of customers with varying levels of discounts and commission expense. As a result of changes in both the mix of products sold as well as customer mix in any given period, our consolidated gross margin can vary significantly from period to period.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The semiconductor market (“semi” or the “semi market”) which includes both the broader semiconductor market, as well as the more specialized automated test equipment (“ATE”) and wafer production sectors within the broader semiconductor market, has historically been the largest single market in which we operate. The semi market is characterized by rapid technological change, competitive pricing pressures and cyclical as well as seasonal market patterns. The semi market is also subject to periods of significant expansion or contraction in demand. In addition to the semi market, we sell into a variety of other markets. Our intention is to continue diversifying our markets, our product offerings within the markets we serve and our customer base across all of our markets with the goal of reducing our dependence on any <em style="font: inherit;">one</em> market, product or customer. In particular, we are seeking to reduce the impact of volatility in the semi market on our results of operations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our Electronic Test segment sells many of its products to semiconductor manufacturers and <em style="font: inherit;">third</em>-party test and assembly houses (end user sales) and to ATE manufacturers (original equipment manufacturer (“OEM”) sales), who ultimately resell our equipment with theirs to both semiconductor manufacturers and <em style="font: inherit;">third</em>-party test and assembly houses. These sales all fall within the ATE sector of the semi market. With the acquisition of Acculogic Inc. and its affiliates (“Acculogic”) in <em style="font: inherit;"> December 2021, </em>and Alfamation in <em style="font: inherit;"> March 2024, </em>our Electronic Test segment also sells its products to customers in markets outside the semi market including the automotive, defense/aerospace, industrial and life sciences and specialty consumer electronics markets. Our Environmental Technologies segment sells its products to end users and OEMs within the ATE sector of the semi market. It also sells its products to customers in a variety of other markets other than the semi market, including the automotive, defense/aerospace, industrial and life sciences markets. Our Process Technologies segment sells its products to customers in the wafer production sector within the semi market. It also sells its products to customers in a variety of other markets other than the semi market, including the automotive, defense/aerospace, industrial, life sciences and security markets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our financial results are affected by a wide variety of factors, including, but <em style="font: inherit;">not</em> limited to, general economic conditions worldwide and in the markets in which we operate, economic conditions specific to the semi market and the other markets we serve, downward pricing pressures from customers, our reliance on a relatively few number of customers for a significant portion of our sales and our ability to safeguard patented technology and intellectual property in a rapidly evolving market. In addition, we are exposed to the risk of obsolescence of our inventory depending on the mix of future business and technological changes within the markets that we serve. Part of our strategy for growth includes potential acquisitions that <em style="font: inherit;"> may </em>cause us to incur substantial expense in reviewing and evaluating potential transactions. We <em style="font: inherit;"> may </em>or <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be successful in locating suitable businesses to acquire and in closing acquisitions of businesses we pursue. In addition, we <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be able to successfully integrate any business we do acquire with our existing business and we <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be able to operate the acquired business profitably. As a result of these or other factors, we <em style="font: inherit;"> may </em>experience significant period-to-period fluctuations in future operating results.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> May 11, 2023, </em>we entered into an At-the-Market Issuance Sales Agreement (the "Sales Agreement") pursuant to which we issued and sold 921,797 shares of our common stock having an aggregate offering price of $20,000 between <em style="font: inherit;"> May 11, 2023 </em>and <em style="font: inherit;"> May 31, 2023. </em>We received net proceeds from the sale of these shares of $19,244 after payment of commissions of 3.0% of the gross proceeds and other fees related to the sale of these shares.</p> 3 20000000 18000000 19674000 187432 2086000 542000 593000 8616000 9418000 921797 20000 19244 0.03 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">2</em>) </b></p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Basis of Presentation and Use of Estimates</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The accompanying consolidated financial statements include our accounts and those of our wholly owned subsidiaries. All significant intercompany accounts and transactions have been eliminated upon consolidation. The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America ("U.S. GAAP") requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates. Certain of our accounts, including contingent consideration, inventories, long-lived assets, goodwill, identifiable intangibles and deferred tax assets and liabilities, including related valuation allowances, are particularly impacted by estimates.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments (consisting only of normal recurring adjustments) necessary to present fairly the financial position, results of operations, and changes in cash flows for the interim periods presented. Certain footnote information has been condensed or omitted from these consolidated financial statements. Therefore, these consolidated financial statements should be read in conjunction with the consolidated financial statements and accompanying footnotes included in our Annual Report on Form <em style="font: inherit;">10</em>-K for the year ended <em style="font: inherit;"> December 31, 2023 (</em>the <em style="font: inherit;">“2023</em> Form <em style="font: inherit;">10</em>-K”) filed on <em style="font: inherit;"> March 27, 2024 </em>with the Securities and Exchange Commission.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Reclassification</span></i></b><br/> <br/> Certain prior period amounts have been reclassified to be comparable with the current period's presentation. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Subsequent Events</span></i></b><br/> <br/> We have made an assessment of our operations and determined that there were <em style="font: inherit;">no</em> material subsequent events requiring adjustment to, or disclosure in, our consolidated financial statements for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>other than the matter discussed in Note <em style="font: inherit;">15.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Business Combinations</span></i></b><br/> <br/> Acquired businesses are accounted for using the purchase method of accounting, which requires that the purchase price be allocated to the net assets acquired at their respective fair values. Any excess of the purchase price over the estimated fair values of the net assets acquired is recorded as goodwill. Fair values of intangible assets are estimated by valuation models prepared by our management and <em style="font: inherit;">third</em>-party advisors. The assets purchased and liabilities assumed have been reflected in our consolidated balance sheets, and the operating results are included in the consolidated statements of operations and consolidated statements of cash flows from the date of acquisition. Any change in the fair value of acquisition-related contingent consideration subsequent to the acquisition date, including changes from events after the acquisition date, will be recognized in the consolidated statement of operations in the period of the estimated fair value change. Acquisition-related transaction costs, including legal and accounting fees and other external costs directly related to the acquisition, are recognized separately from the acquisition and expensed as incurred in general and administrative expense in the consolidated statements of operations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Cash, Cash Equivalents and Restricted Cash</span></i></b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Short-term investments that have maturities of <em style="font: inherit;">three</em> months or less when purchased are considered to be cash equivalents and are carried at cost, which approximates fair value. Our cash balances, which are deposited with highly reputable financial institutions, at times <em style="font: inherit;"> may </em>exceed the federally insured limits. We have <em style="font: inherit;">not</em> experienced any losses related to these cash balances and believe the credit risk to be minimal.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Periodically we have restricted cash which represents amounts deposited at our banks to support bank guarantees which certain of our customers require as a condition of paying large deposits on orders they place with us. Typically, the amount of the deposit and related guarantee declines as shipments are made against the order. At <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023, </em>we had <em style="font: inherit;">no</em> amounts classified as restricted cash.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Trade Accounts Receivable and Allowance for Credit Losses</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Trade accounts receivable are recorded at the invoiced amount and do <em style="font: inherit;">not</em> bear interest. We grant credit to customers and generally require <em style="font: inherit;">no</em> collateral. To minimize our risk, we perform ongoing credit evaluations of our customers' financial condition. As discussed below under “Effect of Recently Adopted Amendments to Authoritative Accounting Guidance”, effective <em style="font: inherit;"> January 1, 2023, </em>we follow the guidance in Accounting Standards Codification (“ASC”) Topic <em style="font: inherit;">326</em> (Financial Instruments – Credit Losses) in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. In establishing the amount of allowance for credit losses, we consider all information available as of the reporting date including information related to past events, such as historical loss rates and actual incurred losses, as well as current conditions that <em style="font: inherit;"> may </em>indicate future risk of loss and any other factors of which we are aware, that we believe could impact the ultimate collectability of the related receivables in future periods.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Account balances are charged off against the allowance after all means of collection have been exhausted and the potential for recovery is considered remote. We do <em style="font: inherit;">not</em> have any significant off-balance sheet credit exposure related to our customers. Cash flows from accounts receivable are recorded in operating cash flows.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">For the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024, </em>we utilized $48 of the allowance for credit losses to offset the write-off of a receivable in our Electronic Test segment. There were <em style="font: inherit;">no</em> other significant changes in the amount of the allowance for credit losses during this time period. There was <em style="font: inherit;">no</em> bad debt expense recorded for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>or <em style="font: inherit;">2023.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Fair Value of Financial Instruments</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our financial instruments include cash and cash equivalents, restricted cash, short-term investments, accounts receivable, accounts payable, accrued expenses, our credit facility, interest rate swaps and our liabilities for contingent consideration. Our cash and cash equivalents, accounts receivable, accounts payable and accrued expenses are carried at cost which approximates fair value, due to the short maturities of the accounts. Our short-term investments are classified as held-to-maturity and carried at amortized cost. Our credit facility and our interest rate swap are discussed further below and in Note <em style="font: inherit;">10.</em> Our liabilities for contingent consideration are accounted for in accordance with the guidance in ASC Topic <em style="font: inherit;">820</em> (Fair Value Measurement). ASC Topic <em style="font: inherit;">820</em> establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Our contingent consideration liabilities are measured at fair value on a recurring basis using Level <em style="font: inherit;">3</em> inputs which are inputs that are unobservable and significant to the overall fair value measurement. These unobservable inputs reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. See Note <em style="font: inherit;">4</em> for further disclosures related to the fair value of our liabilities for contingent consideration.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Goodwill, Intangible and Long-Lived Assets</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have <em style="font: inherit;">three</em> reportable segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We account for goodwill and intangible assets in accordance with ASC Topic <em style="font: inherit;">350</em> (Intangibles - Goodwill and Other). Finite-lived intangible assets are amortized over their estimated useful economic life and are carried at cost less accumulated amortization. Goodwill is assessed for impairment annually at the beginning of the <em style="font: inherit;">fourth</em> quarter on a reporting unit basis, or more frequently when events and circumstances occur indicating that the recorded goodwill <em style="font: inherit;"> may </em>be impaired. Goodwill is considered to be impaired if the fair value of a reporting unit is less than its carrying amount. As a part of the goodwill impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of a reporting unit is less than its carrying amount. If, as a result of our qualitative assessment, we determine that it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of the reporting unit is greater than its carrying amount, a quantitative goodwill impairment test is <em style="font: inherit;">not</em> required. However, if, as a result of our qualitative assessment, we determine it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of a reporting unit is less than its carrying amount, or, if we choose <em style="font: inherit;">not</em> to perform a qualitative assessment, we are required to perform a quantitative goodwill impairment test to identify potential goodwill impairment and measure the amount of goodwill impairment loss to be recognized. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The quantitative goodwill impairment test compares the fair value of a reporting unit with its carrying amount, including goodwill. If the fair value of a reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered <em style="font: inherit;">not</em> impaired. If the carrying amount of a reporting unit exceeds its fair value, an impairment loss will be recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit. The goodwill impairment assessment is based upon the income approach, which estimates the fair value of our reporting units based upon a discounted cash flow approach. This fair value is then reconciled to our market capitalization at year end with an appropriate control premium. The determination of the fair value of our reporting units requires management to make significant estimates and assumptions including the selection of control premiums, discount rates, terminal growth rates, forecasts of revenue and expense growth rates, income tax rates, changes in working capital, depreciation, amortization and capital expenditures. Changes in assumptions concerning future financial results or other underlying assumptions could have a significant impact on either the fair value of the reporting unit or the amount of the goodwill impairment charge.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Indefinite-lived intangible assets are assessed for impairment annually at the beginning of the <em style="font: inherit;">fourth</em> quarter, or more frequently if events or changes in circumstances indicate that the asset might be impaired. As a part of the impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more likely than <em style="font: inherit;">not</em> that an indefinite-lived intangible asset is impaired. If, as a result of our qualitative assessment, we determine that it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of the indefinite-lived intangible asset is less than its carrying amount, the quantitative impairment test is required; otherwise, <em style="font: inherit;">no</em> further testing is required. The quantitative impairment test consists of a comparison of the fair value of the intangible asset with its carrying amount. If the carrying amount of the intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Long-lived assets, which consist of finite-lived intangible assets, property and equipment and right-of-use (“ROU”) assets, are assessed for impairment whenever events or changes in business circumstances indicate that the carrying amount of the assets <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be fully recoverable or that the useful lives of these assets are <em style="font: inherit;">no</em> longer appropriate. Each impairment test is based on a comparison of the estimated undiscounted cash flows to the recorded value of the asset group. If impairment is indicated, the asset group is written down to its estimated fair value. The cash flow estimates used to determine the impairment, if any, contain management's best estimates using appropriate assumptions and projections at that time. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Revenue Recognition</span></i></b><br/> <br/> We recognize revenue in accordance with the guidance in ASC Topic <em style="font: inherit;">606</em> (Revenue from Contracts with Customers). We recognize revenue for the sale of products or services when our performance obligations under the terms of a contract with a customer are satisfied and control of the product or service has been transferred to the customer. Generally, this occurs when we ship a product or perform a service. In certain cases, recognition of revenue is deferred until the product is received by the customer or at some other point in the future when we have determined that we have satisfied our performance obligations under the contract. Our contracts with customers <em style="font: inherit;"> may </em>include a combination of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. In addition to the sale of products and services, we also lease certain of our equipment to customers under short-term lease agreements. We recognize revenue from equipment leases on a straight-line basis over the lease term.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Revenue is recorded in an amount that reflects the consideration we expect to receive in exchange for those products or services. We do <em style="font: inherit;">not</em> have any material variable consideration arrangements, or any material payment terms with our customers other than standard payment terms which generally range from net <em style="font: inherit;">30</em> to net <em style="font: inherit;">90</em> days. We generally do <em style="font: inherit;">not</em> provide a right of return to our customers. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Nature of Products and Services</i></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing in targeted markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. Our Environmental Technologies segment sells thermal management products including ThermoStreams, ThermoChambers, process chillers, refrigerators and freezers, which we sell under our Temptronic, Sigma, Thermonics and North Sciences product lines. Our Process Technologies segment sells precision induction heating systems through our subsidiary, Ambrell Corporation (“Ambrell”), including EKOHEAT® and EASYHEAT™ products. This segment also sells industrial-grade circuit board mounted video digital cameras and related devices, systems and software through our Videology Imaging Corporation (“Videology”), subsidiary. Our Electronic Test segment sells semiconductor ATE interface solutions through our inTEST EMS (“EMS”) subsidiary, including manipulators, docking hardware and electrical interface products. This segment also sells robotics-based electronic production test equipment under the Acculogic tradename and, as a result of the acquisition of Alfamation on <em style="font: inherit;"> March 12, 2024, </em>which is discussed further in Note <em style="font: inherit;">3,</em> this segment now sells test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. We provide post-warranty service and support for the equipment we sell. We sell our products to various markets including the automotive, defense/aerospace, industrial, life sciences, security and semiconductor markets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We lease certain of our equipment under short-term leasing agreements with original lease terms of <em style="font: inherit;">six</em> months or less. Our lease agreements do <em style="font: inherit;">not</em> contain purchase options.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Occasionally we procure and sell materials/components on behalf of and to our customers.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Types of Contracts with Customers</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our contracts with customers are generally structured as individual purchase orders which specify the exact products or services being sold or equipment being leased along with the selling price, service fee or monthly lease amount for each individual item on the purchase order. Payment terms and any other customer-specific acceptance criteria are also specified on the purchase order. We generally do <em style="font: inherit;">not</em> have any customer-specific acceptance criteria, other than that the product performs within the agreed upon specifications. We test substantially all products manufactured as part of our quality assurance process to determine that they comply with specifications prior to shipment to a customer.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Contract Balances</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We record accounts receivable at the time of invoicing. Accounts receivable, net of the allowance for credit losses, is included in current assets on our consolidated balance sheets. In certain instances, we also receive customer deposits in advance of invoicing and recording of accounts receivable. Customer deposits are included in current liabilities on our consolidated balance sheets. To the extent that we do <em style="font: inherit;">not</em> recognize revenue at the same time as we invoice, we record a liability for deferred revenue. Deferred revenue estimated to be recognized within the next <em style="font: inherit;">twelve</em> months is included in current liabilities. Deferred revenue that we estimate will be recognized beyond <em style="font: inherit;">twelve</em> months is recorded in Other Liabilities on our consolidated balance sheets. Any non-inventoriable costs associated with deferred revenue are also deferred and recorded in Prepaid Expenses and Other Current Assets or Other Assets on our consolidated balance sheets, depending on when the related deferred revenue is expected to be recognized.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">As discussed above, we follow the guidance in ASC Topic <em style="font: inherit;">326</em> in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. We monitor the collectability of accounts receivable on an ongoing basis and record charges for bad debt expense in the period when we determine that a loss is expected to occur based on our assessment.<br/>  </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Costs to Obtain a Contract with a Customer</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The only costs we incur associated with obtaining contracts with customers are sales commissions that we pay to our internal sales personnel or <em style="font: inherit;">third</em>-party sales representatives. These costs are calculated based on set percentages of the selling price of each product or service sold. Commissions are considered earned by our internal sales personnel at the time we recognize revenue for a particular transaction. Commissions are considered earned by <em style="font: inherit;">third</em>-party sales representatives at the time that revenue is recognized for a particular transaction. We record commission expense in our consolidated statements of operations at the time the commission is earned. Commissions earned but <em style="font: inherit;">not</em> yet paid are included in current liabilities on our balance sheets.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Product Warranties</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In connection with the sale of our products, we generally provide standard <em style="font: inherit;">one</em>- or <em style="font: inherit;">two</em>-year product warranties which are detailed in our terms and conditions and communicated to our customers. Our standard warranties are <em style="font: inherit;">not</em> offered for sale separately from our products; therefore, there is <em style="font: inherit;">not</em> a separate performance obligation related to our standard warranties. We record estimated warranty expense for our standard warranties at the time of sale based upon historical claims experience. We offer customers an option to separately purchase an extended warranty on certain products. In the case of extended warranties, we recognize revenue in the amount of the sale price for the extended warranty on a straight-line basis over the extended warranty period. We record costs incurred to provide service under an extended warranty at the time the service is provided. Warranty expense is included in selling expense in our consolidated statements of operations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">See Notes <em style="font: inherit;">6</em> and <em style="font: inherit;">14</em> for further information about our revenue from contracts with customers.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Inventories</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Inventories are valued at cost on a <em style="font: inherit;">first</em>-in, <em style="font: inherit;">first</em>-out basis, <em style="font: inherit;">not</em> in excess of market value. Cash flows from the sale of inventories are recorded in operating cash flows. On a quarterly basis, we review our inventories and record excess and obsolete inventory charges based upon our established objective excess and obsolete inventory criteria. Our criteria identify excess material as the quantity of material on hand that is greater than the average annual usage of that material over the prior <em style="font: inherit;">three</em> years. Our criteria identify obsolete material as material that has <em style="font: inherit;">not</em> been used in a work order during the prior <em style="font: inherit;">twenty-four</em> months. In certain cases, additional excess and obsolete inventory charges are recorded based upon current market conditions, anticipated product life cycles, new product introductions and expected future use of the inventory. The excess and obsolete inventory charges we record establish a new cost basis for the related inventories. We incurred excess and obsolete inventory charges of $176 and $135 for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023,</em> respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Leases</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We account for leases in accordance with ASC Topic <em style="font: inherit;">842</em> (Leases). We determine if an arrangement is a lease at inception. A lease contract is within scope if the contract has an identified asset (property, plant or equipment) and grants the lessee the right to control the use of the asset during the lease term. The identified asset <em style="font: inherit;"> may </em>be either explicitly or implicitly specified in the contract. In addition, the supplier must <em style="font: inherit;">not</em> have any practical ability to substitute a different asset and would <em style="font: inherit;">not</em> economically benefit from doing so for the lease contract to be in scope. The lessee’s right to control the use of the asset during the term of the lease must include the ability to obtain substantially all of the economic benefits from the use of the asset as well as decision-making authority over how the asset will be used. Leases are classified as either operating leases or finance leases based on the guidance in ASC Topic <em style="font: inherit;">842.</em> Operating leases are included in operating lease ROU assets and operating lease liabilities in our consolidated balance sheets. Finance leases are included in property and equipment and financing lease liabilities. We do <em style="font: inherit;">not</em> currently have any financing leases.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. <em style="font: inherit;">None</em> of our leases provide an implicit rate; therefore, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms <em style="font: inherit;"> may </em>include options to extend or terminate the lease. We include these options in the determination of the amount of the ROU asset and lease liability when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Certain of our operating leases contain predetermined fixed escalations of minimum rentals and rent holidays during the original lease terms. Rent holidays are periods during which we have control of the leased facility but are <em style="font: inherit;">not</em> obligated to pay rent. For these leases, our ROU asset and lease liability are calculated including any rent holiday in the determination of the life of the lease.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have lease agreements which contain both lease and non-lease components, which are generally accounted for separately. In addition to the monthly rental payments due, most of our leases for our offices and warehouse facilities include non-lease components representing our portion of the common area maintenance, property taxes and insurance charges incurred by the landlord for the facilities which we occupy. These amounts are <em style="font: inherit;">not</em> included in the calculation of the ROU assets and lease liabilities as they are based on actual charges incurred in the periods to which they apply.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Operating lease payments are included in cash outflows from operating activities on our consolidated statements of cash flows. Amortization of ROU assets is presented separately from the change in operating lease liabilities and is included in Depreciation and Amortization on our consolidated statements of cash flows.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have made an accounting policy election <em style="font: inherit;">not</em> to apply the recognition requirements of ASC Topic <em style="font: inherit;">842</em> to short-term leases (leases with a term of <em style="font: inherit;">one</em> year or less at the commencement date of the lease). Lease expense for short-term lease payments is recognized on a straight-line basis over the lease term.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">See Note <em style="font: inherit;">9</em> for further disclosures regarding our leases.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Interest Rate Swap Agreement</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We are exposed to interest rate risk on our floating-rate debt. We have entered into an interest rate swap agreement to effectively convert our floating-rate debt to a fixed-rate basis for a portion of our floating rate debt, as discussed further in Notes <em style="font: inherit;">4</em> and <em style="font: inherit;">10.</em> The principal objective of this agreement is to eliminate the variability of the cash flows for interest payments associated with our floating-rate debt, thus reducing the impact of interest rate changes on future interest payment cash flows. We have elected to apply the hedge accounting rules in accordance with ASC Topic <em style="font: inherit;">815</em> (Derivatives and Hedging). Further, we have determined that this agreement qualifies for the shortcut method of hedge accounting. Changes in the fair value of interest rate swap agreements designated as cash flow hedges are recorded as a component of accumulated other comprehensive earnings (loss) within stockholders’ equity and are amortized to interest expense over the term of the related debt. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Contingent Liability for Repayment of State and Local Grant Funds Received </span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In connection with leasing a facility in Rochester, New York, which our subsidiary, Ambrell, occupied in <em style="font: inherit;"> May 2018, </em>we entered into agreements with the city of Rochester and the state of New York under which we received grants totaling $550 to help offset a portion of the cost of the leasehold improvements we made to this facility. The final payment of $87 was received during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2022. </em>In exchange for the funds we received under these agreements, we are required to create and maintain specified levels of employment in this location through various dates ending in <em style="font: inherit;">2024.</em> If we fail to meet these employment targets, we <em style="font: inherit;"> may </em>be required to repay a proportionate share of the proceeds. At <em style="font: inherit;"> March 31, 2024, </em>$123 of the total proceeds received could still be required to be repaid if we do <em style="font: inherit;">not</em> meet the targets. We have recorded this amount as a contingent liability which is included in other liabilities on our consolidated balance sheet. Those portions of the proceeds which are <em style="font: inherit;">no</em> longer subject to repayment are reclassified to deferred grant proceeds and amortized to income on a straight-line basis over the remaining lease term for the Rochester facility. Deferred grant proceeds are included in other current liabilities and other liabilities on our balance sheet and totaled $298 at <em style="font: inherit;"> March 31, 2024. </em>At <em style="font: inherit;"> March 31, 2024, </em>we were in compliance with the employment targets as specified in the grant agreement with the city of Rochester. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Stock-Based Compensation</span></i></b><br/> <br/> We account for stock-based compensation in accordance with ASC Topic <em style="font: inherit;">718</em> (Compensation - Stock Compensation) which requires that employee share-based equity awards be accounted for under the fair value method and requires the use of an option pricing model for estimating fair value of stock options, which is then amortized to expense over the service periods. See further disclosures related to our stock-based compensation plans in Note <em style="font: inherit;">11.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Income Taxes</span></i></b><br/> <br/> The asset and liability method is used in accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for operating loss and tax credit carryforwards and for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. A valuation allowance is recorded to reduce the carrying amounts of deferred tax assets if it is more likely than <em style="font: inherit;">not</em> that such assets will <em style="font: inherit;">not</em> be realized.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Earnings (Loss) Per Common Share</span></i></b><br/> <br/> Earnings (loss) per common share - basic is computed by dividing net earnings (loss) by the weighted average number of common shares outstanding during each period. Earnings (loss) per common share - diluted is computed by dividing earnings (loss) by the weighted average number of common shares and common share equivalents outstanding during each period. Common share equivalents represent unvested shares of restricted stock and stock options and are calculated using the treasury stock method. Common share equivalents are excluded from the calculation if their effect is anti-dilutive.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The table below sets forth, for the periods indicated, a reconciliation of weighted average common shares outstanding - basic to weighted average common shares and common share equivalents outstanding - diluted and the average number of potentially dilutive securities that were excluded from the calculation of diluted earnings (loss) per share because their effect was anti-dilutive:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average common shares outstanding–basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,026,361</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,755,729</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Potentially dilutive securities:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares of restricted stock and employee stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">131,936</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">332,935</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Weighted average common shares and common share equivalents outstanding–diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,158,297</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,088,664</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">434,584</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">154,429</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p><p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i></i></b></p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Effect of Recently Issued Amendments to Authoritative Accounting Guidance</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In <em style="font: inherit;"> November 2023, </em>the FASB issued amendments to the guidance for disclosures about reportable segments which require disclosures of significant expenses by segment and interim disclosure of items that were previously required on an annual basis. The amendments are to be applied on a retrospective basis and are effective for fiscal years beginning after <em style="font: inherit;"> December 15, 2023 </em>and interim periods within fiscal years beginning after <em style="font: inherit;"> December 15, 2024. </em>We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In <em style="font: inherit;"> December 2023, </em>the FASB issued amendments to the guidance for disclosures about income tax which provide for additional disclosures primarily related to the income tax rate reconciliations and income taxes paid. The amendments require entities to annually disclose the income tax rate reconciliation using both amounts and percentages, considering several categories of reconciling items, including state and local income taxes, foreign tax effects, tax credits and nontaxable or nondeductible items, among others. Disclosure of the reconciling items is subject to a quantitative threshold and disaggregation by nature and jurisdiction. The amendments also require entities to disclose net income taxes paid or received to federal, state and foreign jurisdictions, as well as by individual jurisdiction, subject to a <em style="font: inherit;">five</em> percent quantitative threshold. The amendments <em style="font: inherit;"> may </em>be adopted on a prospective or retrospective basis and are effective for fiscal years beginning after <em style="font: inherit;"> December 15, 2024 </em>with early adoption permitted. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.</p><p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Basis of Presentation and Use of Estimates</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The accompanying consolidated financial statements include our accounts and those of our wholly owned subsidiaries. All significant intercompany accounts and transactions have been eliminated upon consolidation. The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America ("U.S. GAAP") requires us to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the financial statements and the reported amounts of revenue and expenses during the reporting period. Actual results could differ from those estimates. Certain of our accounts, including contingent consideration, inventories, long-lived assets, goodwill, identifiable intangibles and deferred tax assets and liabilities, including related valuation allowances, are particularly impacted by estimates.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In the opinion of management, the accompanying unaudited consolidated financial statements include all adjustments (consisting only of normal recurring adjustments) necessary to present fairly the financial position, results of operations, and changes in cash flows for the interim periods presented. Certain footnote information has been condensed or omitted from these consolidated financial statements. Therefore, these consolidated financial statements should be read in conjunction with the consolidated financial statements and accompanying footnotes included in our Annual Report on Form <em style="font: inherit;">10</em>-K for the year ended <em style="font: inherit;"> December 31, 2023 (</em>the <em style="font: inherit;">“2023</em> Form <em style="font: inherit;">10</em>-K”) filed on <em style="font: inherit;"> March 27, 2024 </em>with the Securities and Exchange Commission.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Reclassification</span></i></b><br/> <br/> Certain prior period amounts have been reclassified to be comparable with the current period's presentation. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Subsequent Events</span></i></b><br/> <br/> We have made an assessment of our operations and determined that there were <em style="font: inherit;">no</em> material subsequent events requiring adjustment to, or disclosure in, our consolidated financial statements for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>other than the matter discussed in Note <em style="font: inherit;">15.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Business Combinations</span></i></b><br/> <br/> Acquired businesses are accounted for using the purchase method of accounting, which requires that the purchase price be allocated to the net assets acquired at their respective fair values. Any excess of the purchase price over the estimated fair values of the net assets acquired is recorded as goodwill. Fair values of intangible assets are estimated by valuation models prepared by our management and <em style="font: inherit;">third</em>-party advisors. The assets purchased and liabilities assumed have been reflected in our consolidated balance sheets, and the operating results are included in the consolidated statements of operations and consolidated statements of cash flows from the date of acquisition. Any change in the fair value of acquisition-related contingent consideration subsequent to the acquisition date, including changes from events after the acquisition date, will be recognized in the consolidated statement of operations in the period of the estimated fair value change. Acquisition-related transaction costs, including legal and accounting fees and other external costs directly related to the acquisition, are recognized separately from the acquisition and expensed as incurred in general and administrative expense in the consolidated statements of operations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Cash, Cash Equivalents and Restricted Cash</span></i></b></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Short-term investments that have maturities of <em style="font: inherit;">three</em> months or less when purchased are considered to be cash equivalents and are carried at cost, which approximates fair value. Our cash balances, which are deposited with highly reputable financial institutions, at times <em style="font: inherit;"> may </em>exceed the federally insured limits. We have <em style="font: inherit;">not</em> experienced any losses related to these cash balances and believe the credit risk to be minimal.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Periodically we have restricted cash which represents amounts deposited at our banks to support bank guarantees which certain of our customers require as a condition of paying large deposits on orders they place with us. Typically, the amount of the deposit and related guarantee declines as shipments are made against the order. At <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023, </em>we had <em style="font: inherit;">no</em> amounts classified as restricted cash.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Trade Accounts Receivable and Allowance for Credit Losses</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Trade accounts receivable are recorded at the invoiced amount and do <em style="font: inherit;">not</em> bear interest. We grant credit to customers and generally require <em style="font: inherit;">no</em> collateral. To minimize our risk, we perform ongoing credit evaluations of our customers' financial condition. As discussed below under “Effect of Recently Adopted Amendments to Authoritative Accounting Guidance”, effective <em style="font: inherit;"> January 1, 2023, </em>we follow the guidance in Accounting Standards Codification (“ASC”) Topic <em style="font: inherit;">326</em> (Financial Instruments – Credit Losses) in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. In establishing the amount of allowance for credit losses, we consider all information available as of the reporting date including information related to past events, such as historical loss rates and actual incurred losses, as well as current conditions that <em style="font: inherit;"> may </em>indicate future risk of loss and any other factors of which we are aware, that we believe could impact the ultimate collectability of the related receivables in future periods.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Account balances are charged off against the allowance after all means of collection have been exhausted and the potential for recovery is considered remote. We do <em style="font: inherit;">not</em> have any significant off-balance sheet credit exposure related to our customers. Cash flows from accounts receivable are recorded in operating cash flows.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">For the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024, </em>we utilized $48 of the allowance for credit losses to offset the write-off of a receivable in our Electronic Test segment. There were <em style="font: inherit;">no</em> other significant changes in the amount of the allowance for credit losses during this time period. There was <em style="font: inherit;">no</em> bad debt expense recorded for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>or <em style="font: inherit;">2023.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 48000 <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Fair Value of Financial Instruments</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our financial instruments include cash and cash equivalents, restricted cash, short-term investments, accounts receivable, accounts payable, accrued expenses, our credit facility, interest rate swaps and our liabilities for contingent consideration. Our cash and cash equivalents, accounts receivable, accounts payable and accrued expenses are carried at cost which approximates fair value, due to the short maturities of the accounts. Our short-term investments are classified as held-to-maturity and carried at amortized cost. Our credit facility and our interest rate swap are discussed further below and in Note <em style="font: inherit;">10.</em> Our liabilities for contingent consideration are accounted for in accordance with the guidance in ASC Topic <em style="font: inherit;">820</em> (Fair Value Measurement). ASC Topic <em style="font: inherit;">820</em> establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Our contingent consideration liabilities are measured at fair value on a recurring basis using Level <em style="font: inherit;">3</em> inputs which are inputs that are unobservable and significant to the overall fair value measurement. These unobservable inputs reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances. See Note <em style="font: inherit;">4</em> for further disclosures related to the fair value of our liabilities for contingent consideration.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Goodwill, Intangible and Long-Lived Assets</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have <em style="font: inherit;">three</em> reportable segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We account for goodwill and intangible assets in accordance with ASC Topic <em style="font: inherit;">350</em> (Intangibles - Goodwill and Other). Finite-lived intangible assets are amortized over their estimated useful economic life and are carried at cost less accumulated amortization. Goodwill is assessed for impairment annually at the beginning of the <em style="font: inherit;">fourth</em> quarter on a reporting unit basis, or more frequently when events and circumstances occur indicating that the recorded goodwill <em style="font: inherit;"> may </em>be impaired. Goodwill is considered to be impaired if the fair value of a reporting unit is less than its carrying amount. As a part of the goodwill impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of a reporting unit is less than its carrying amount. If, as a result of our qualitative assessment, we determine that it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of the reporting unit is greater than its carrying amount, a quantitative goodwill impairment test is <em style="font: inherit;">not</em> required. However, if, as a result of our qualitative assessment, we determine it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of a reporting unit is less than its carrying amount, or, if we choose <em style="font: inherit;">not</em> to perform a qualitative assessment, we are required to perform a quantitative goodwill impairment test to identify potential goodwill impairment and measure the amount of goodwill impairment loss to be recognized. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The quantitative goodwill impairment test compares the fair value of a reporting unit with its carrying amount, including goodwill. If the fair value of a reporting unit exceeds its carrying amount, goodwill of the reporting unit is considered <em style="font: inherit;">not</em> impaired. If the carrying amount of a reporting unit exceeds its fair value, an impairment loss will be recognized in an amount equal to that excess, limited to the total amount of goodwill allocated to that reporting unit. The goodwill impairment assessment is based upon the income approach, which estimates the fair value of our reporting units based upon a discounted cash flow approach. This fair value is then reconciled to our market capitalization at year end with an appropriate control premium. The determination of the fair value of our reporting units requires management to make significant estimates and assumptions including the selection of control premiums, discount rates, terminal growth rates, forecasts of revenue and expense growth rates, income tax rates, changes in working capital, depreciation, amortization and capital expenditures. Changes in assumptions concerning future financial results or other underlying assumptions could have a significant impact on either the fair value of the reporting unit or the amount of the goodwill impairment charge.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Indefinite-lived intangible assets are assessed for impairment annually at the beginning of the <em style="font: inherit;">fourth</em> quarter, or more frequently if events or changes in circumstances indicate that the asset might be impaired. As a part of the impairment assessment, we have the option to perform a qualitative assessment to determine whether it is more likely than <em style="font: inherit;">not</em> that an indefinite-lived intangible asset is impaired. If, as a result of our qualitative assessment, we determine that it is more-likely-than-<em style="font: inherit;">not</em> that the fair value of the indefinite-lived intangible asset is less than its carrying amount, the quantitative impairment test is required; otherwise, <em style="font: inherit;">no</em> further testing is required. The quantitative impairment test consists of a comparison of the fair value of the intangible asset with its carrying amount. If the carrying amount of the intangible asset exceeds its fair value, an impairment loss is recognized in an amount equal to that excess.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Long-lived assets, which consist of finite-lived intangible assets, property and equipment and right-of-use (“ROU”) assets, are assessed for impairment whenever events or changes in business circumstances indicate that the carrying amount of the assets <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be fully recoverable or that the useful lives of these assets are <em style="font: inherit;">no</em> longer appropriate. Each impairment test is based on a comparison of the estimated undiscounted cash flows to the recorded value of the asset group. If impairment is indicated, the asset group is written down to its estimated fair value. The cash flow estimates used to determine the impairment, if any, contain management's best estimates using appropriate assumptions and projections at that time. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Revenue Recognition</span></i></b><br/> <br/> We recognize revenue in accordance with the guidance in ASC Topic <em style="font: inherit;">606</em> (Revenue from Contracts with Customers). We recognize revenue for the sale of products or services when our performance obligations under the terms of a contract with a customer are satisfied and control of the product or service has been transferred to the customer. Generally, this occurs when we ship a product or perform a service. In certain cases, recognition of revenue is deferred until the product is received by the customer or at some other point in the future when we have determined that we have satisfied our performance obligations under the contract. Our contracts with customers <em style="font: inherit;"> may </em>include a combination of products and services, which are generally capable of being distinct and accounted for as separate performance obligations. In addition to the sale of products and services, we also lease certain of our equipment to customers under short-term lease agreements. We recognize revenue from equipment leases on a straight-line basis over the lease term.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Revenue is recorded in an amount that reflects the consideration we expect to receive in exchange for those products or services. We do <em style="font: inherit;">not</em> have any material variable consideration arrangements, or any material payment terms with our customers other than standard payment terms which generally range from net <em style="font: inherit;">30</em> to net <em style="font: inherit;">90</em> days. We generally do <em style="font: inherit;">not</em> provide a right of return to our customers. Revenue is recognized net of any taxes collected from customers, which are subsequently remitted to governmental authorities.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Nature of Products and Services</i></p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We are a global supplier of innovative test and process technology solutions for use in manufacturing and testing in targeted markets including automotive, defense/aerospace, industrial, life sciences, security and semiconductor. Our Environmental Technologies segment sells thermal management products including ThermoStreams, ThermoChambers, process chillers, refrigerators and freezers, which we sell under our Temptronic, Sigma, Thermonics and North Sciences product lines. Our Process Technologies segment sells precision induction heating systems through our subsidiary, Ambrell Corporation (“Ambrell”), including EKOHEAT® and EASYHEAT™ products. This segment also sells industrial-grade circuit board mounted video digital cameras and related devices, systems and software through our Videology Imaging Corporation (“Videology”), subsidiary. Our Electronic Test segment sells semiconductor ATE interface solutions through our inTEST EMS (“EMS”) subsidiary, including manipulators, docking hardware and electrical interface products. This segment also sells robotics-based electronic production test equipment under the Acculogic tradename and, as a result of the acquisition of Alfamation on <em style="font: inherit;"> March 12, 2024, </em>which is discussed further in Note <em style="font: inherit;">3,</em> this segment now sells test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. We provide post-warranty service and support for the equipment we sell. We sell our products to various markets including the automotive, defense/aerospace, industrial, life sciences, security and semiconductor markets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We lease certain of our equipment under short-term leasing agreements with original lease terms of <em style="font: inherit;">six</em> months or less. Our lease agreements do <em style="font: inherit;">not</em> contain purchase options.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Occasionally we procure and sell materials/components on behalf of and to our customers.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Types of Contracts with Customers</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our contracts with customers are generally structured as individual purchase orders which specify the exact products or services being sold or equipment being leased along with the selling price, service fee or monthly lease amount for each individual item on the purchase order. Payment terms and any other customer-specific acceptance criteria are also specified on the purchase order. We generally do <em style="font: inherit;">not</em> have any customer-specific acceptance criteria, other than that the product performs within the agreed upon specifications. We test substantially all products manufactured as part of our quality assurance process to determine that they comply with specifications prior to shipment to a customer.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Contract Balances</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We record accounts receivable at the time of invoicing. Accounts receivable, net of the allowance for credit losses, is included in current assets on our consolidated balance sheets. In certain instances, we also receive customer deposits in advance of invoicing and recording of accounts receivable. Customer deposits are included in current liabilities on our consolidated balance sheets. To the extent that we do <em style="font: inherit;">not</em> recognize revenue at the same time as we invoice, we record a liability for deferred revenue. Deferred revenue estimated to be recognized within the next <em style="font: inherit;">twelve</em> months is included in current liabilities. Deferred revenue that we estimate will be recognized beyond <em style="font: inherit;">twelve</em> months is recorded in Other Liabilities on our consolidated balance sheets. Any non-inventoriable costs associated with deferred revenue are also deferred and recorded in Prepaid Expenses and Other Current Assets or Other Assets on our consolidated balance sheets, depending on when the related deferred revenue is expected to be recognized.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">As discussed above, we follow the guidance in ASC Topic <em style="font: inherit;">326</em> in developing our estimate of the allowance for credit losses related to our accounts receivable. The allowance for credit losses is our best estimate of the amount of expected credit losses in our existing accounts receivable. We monitor the collectability of accounts receivable on an ongoing basis and record charges for bad debt expense in the period when we determine that a loss is expected to occur based on our assessment.<br/>  </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Costs to Obtain a Contract with a Customer</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The only costs we incur associated with obtaining contracts with customers are sales commissions that we pay to our internal sales personnel or <em style="font: inherit;">third</em>-party sales representatives. These costs are calculated based on set percentages of the selling price of each product or service sold. Commissions are considered earned by our internal sales personnel at the time we recognize revenue for a particular transaction. Commissions are considered earned by <em style="font: inherit;">third</em>-party sales representatives at the time that revenue is recognized for a particular transaction. We record commission expense in our consolidated statements of operations at the time the commission is earned. Commissions earned but <em style="font: inherit;">not</em> yet paid are included in current liabilities on our balance sheets.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><i>Product Warranties</i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In connection with the sale of our products, we generally provide standard <em style="font: inherit;">one</em>- or <em style="font: inherit;">two</em>-year product warranties which are detailed in our terms and conditions and communicated to our customers. Our standard warranties are <em style="font: inherit;">not</em> offered for sale separately from our products; therefore, there is <em style="font: inherit;">not</em> a separate performance obligation related to our standard warranties. We record estimated warranty expense for our standard warranties at the time of sale based upon historical claims experience. We offer customers an option to separately purchase an extended warranty on certain products. In the case of extended warranties, we recognize revenue in the amount of the sale price for the extended warranty on a straight-line basis over the extended warranty period. We record costs incurred to provide service under an extended warranty at the time the service is provided. Warranty expense is included in selling expense in our consolidated statements of operations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">See Notes <em style="font: inherit;">6</em> and <em style="font: inherit;">14</em> for further information about our revenue from contracts with customers.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Inventories</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Inventories are valued at cost on a <em style="font: inherit;">first</em>-in, <em style="font: inherit;">first</em>-out basis, <em style="font: inherit;">not</em> in excess of market value. Cash flows from the sale of inventories are recorded in operating cash flows. On a quarterly basis, we review our inventories and record excess and obsolete inventory charges based upon our established objective excess and obsolete inventory criteria. Our criteria identify excess material as the quantity of material on hand that is greater than the average annual usage of that material over the prior <em style="font: inherit;">three</em> years. Our criteria identify obsolete material as material that has <em style="font: inherit;">not</em> been used in a work order during the prior <em style="font: inherit;">twenty-four</em> months. In certain cases, additional excess and obsolete inventory charges are recorded based upon current market conditions, anticipated product life cycles, new product introductions and expected future use of the inventory. The excess and obsolete inventory charges we record establish a new cost basis for the related inventories. We incurred excess and obsolete inventory charges of $176 and $135 for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023,</em> respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 176000 135000 <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Leases</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We account for leases in accordance with ASC Topic <em style="font: inherit;">842</em> (Leases). We determine if an arrangement is a lease at inception. A lease contract is within scope if the contract has an identified asset (property, plant or equipment) and grants the lessee the right to control the use of the asset during the lease term. The identified asset <em style="font: inherit;"> may </em>be either explicitly or implicitly specified in the contract. In addition, the supplier must <em style="font: inherit;">not</em> have any practical ability to substitute a different asset and would <em style="font: inherit;">not</em> economically benefit from doing so for the lease contract to be in scope. The lessee’s right to control the use of the asset during the term of the lease must include the ability to obtain substantially all of the economic benefits from the use of the asset as well as decision-making authority over how the asset will be used. Leases are classified as either operating leases or finance leases based on the guidance in ASC Topic <em style="font: inherit;">842.</em> Operating leases are included in operating lease ROU assets and operating lease liabilities in our consolidated balance sheets. Finance leases are included in property and equipment and financing lease liabilities. We do <em style="font: inherit;">not</em> currently have any financing leases.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">ROU assets represent our right to use an underlying asset for the lease term and lease liabilities represent our obligation to make lease payments arising from the lease. Operating lease ROU assets and liabilities are recognized at commencement date based on the present value of lease payments over the lease term. <em style="font: inherit;">None</em> of our leases provide an implicit rate; therefore, we use our incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments. The operating lease ROU asset also includes any lease payments made and excludes lease incentives. Our lease terms <em style="font: inherit;"> may </em>include options to extend or terminate the lease. We include these options in the determination of the amount of the ROU asset and lease liability when it is reasonably certain that we will exercise that option. Lease expense for lease payments is recognized on a straight-line basis over the lease term. Certain of our operating leases contain predetermined fixed escalations of minimum rentals and rent holidays during the original lease terms. Rent holidays are periods during which we have control of the leased facility but are <em style="font: inherit;">not</em> obligated to pay rent. For these leases, our ROU asset and lease liability are calculated including any rent holiday in the determination of the life of the lease.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have lease agreements which contain both lease and non-lease components, which are generally accounted for separately. In addition to the monthly rental payments due, most of our leases for our offices and warehouse facilities include non-lease components representing our portion of the common area maintenance, property taxes and insurance charges incurred by the landlord for the facilities which we occupy. These amounts are <em style="font: inherit;">not</em> included in the calculation of the ROU assets and lease liabilities as they are based on actual charges incurred in the periods to which they apply.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Operating lease payments are included in cash outflows from operating activities on our consolidated statements of cash flows. Amortization of ROU assets is presented separately from the change in operating lease liabilities and is included in Depreciation and Amortization on our consolidated statements of cash flows.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have made an accounting policy election <em style="font: inherit;">not</em> to apply the recognition requirements of ASC Topic <em style="font: inherit;">842</em> to short-term leases (leases with a term of <em style="font: inherit;">one</em> year or less at the commencement date of the lease). Lease expense for short-term lease payments is recognized on a straight-line basis over the lease term.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">See Note <em style="font: inherit;">9</em> for further disclosures regarding our leases.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Interest Rate Swap Agreement</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We are exposed to interest rate risk on our floating-rate debt. We have entered into an interest rate swap agreement to effectively convert our floating-rate debt to a fixed-rate basis for a portion of our floating rate debt, as discussed further in Notes <em style="font: inherit;">4</em> and <em style="font: inherit;">10.</em> The principal objective of this agreement is to eliminate the variability of the cash flows for interest payments associated with our floating-rate debt, thus reducing the impact of interest rate changes on future interest payment cash flows. We have elected to apply the hedge accounting rules in accordance with ASC Topic <em style="font: inherit;">815</em> (Derivatives and Hedging). Further, we have determined that this agreement qualifies for the shortcut method of hedge accounting. Changes in the fair value of interest rate swap agreements designated as cash flow hedges are recorded as a component of accumulated other comprehensive earnings (loss) within stockholders’ equity and are amortized to interest expense over the term of the related debt. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Contingent Liability for Repayment of State and Local Grant Funds Received </span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In connection with leasing a facility in Rochester, New York, which our subsidiary, Ambrell, occupied in <em style="font: inherit;"> May 2018, </em>we entered into agreements with the city of Rochester and the state of New York under which we received grants totaling $550 to help offset a portion of the cost of the leasehold improvements we made to this facility. The final payment of $87 was received during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2022. </em>In exchange for the funds we received under these agreements, we are required to create and maintain specified levels of employment in this location through various dates ending in <em style="font: inherit;">2024.</em> If we fail to meet these employment targets, we <em style="font: inherit;"> may </em>be required to repay a proportionate share of the proceeds. At <em style="font: inherit;"> March 31, 2024, </em>$123 of the total proceeds received could still be required to be repaid if we do <em style="font: inherit;">not</em> meet the targets. We have recorded this amount as a contingent liability which is included in other liabilities on our consolidated balance sheet. Those portions of the proceeds which are <em style="font: inherit;">no</em> longer subject to repayment are reclassified to deferred grant proceeds and amortized to income on a straight-line basis over the remaining lease term for the Rochester facility. Deferred grant proceeds are included in other current liabilities and other liabilities on our balance sheet and totaled $298 at <em style="font: inherit;"> March 31, 2024. </em>At <em style="font: inherit;"> March 31, 2024, </em>we were in compliance with the employment targets as specified in the grant agreement with the city of Rochester. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 550000 87000 123000 298000 <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Stock-Based Compensation</span></i></b><br/> <br/> We account for stock-based compensation in accordance with ASC Topic <em style="font: inherit;">718</em> (Compensation - Stock Compensation) which requires that employee share-based equity awards be accounted for under the fair value method and requires the use of an option pricing model for estimating fair value of stock options, which is then amortized to expense over the service periods. See further disclosures related to our stock-based compensation plans in Note <em style="font: inherit;">11.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Income Taxes</span></i></b><br/> <br/> The asset and liability method is used in accounting for income taxes. Under this method, deferred tax assets and liabilities are recognized for operating loss and tax credit carryforwards and for the future tax consequences attributable to differences between the financial statement carrying amounts of existing assets and liabilities and their respective tax bases. Deferred tax assets and liabilities are measured using enacted tax rates expected to apply to taxable income in the years in which those temporary differences are expected to be recovered or settled. The effect on deferred tax assets and liabilities of a change in tax rates is recognized in the results of operations in the period that includes the enactment date. A valuation allowance is recorded to reduce the carrying amounts of deferred tax assets if it is more likely than <em style="font: inherit;">not</em> that such assets will <em style="font: inherit;">not</em> be realized.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Earnings (Loss) Per Common Share</span></i></b><br/> <br/> Earnings (loss) per common share - basic is computed by dividing net earnings (loss) by the weighted average number of common shares outstanding during each period. Earnings (loss) per common share - diluted is computed by dividing earnings (loss) by the weighted average number of common shares and common share equivalents outstanding during each period. Common share equivalents represent unvested shares of restricted stock and stock options and are calculated using the treasury stock method. Common share equivalents are excluded from the calculation if their effect is anti-dilutive.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The table below sets forth, for the periods indicated, a reconciliation of weighted average common shares outstanding - basic to weighted average common shares and common share equivalents outstanding - diluted and the average number of potentially dilutive securities that were excluded from the calculation of diluted earnings (loss) per share because their effect was anti-dilutive:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average common shares outstanding–basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,026,361</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,755,729</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Potentially dilutive securities:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares of restricted stock and employee stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">131,936</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">332,935</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Weighted average common shares and common share equivalents outstanding–diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,158,297</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,088,664</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">434,584</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">154,429</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 95%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 18%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average common shares outstanding–basic</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,026,361</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,755,729</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Potentially dilutive securities:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 14%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares of restricted stock and employee stock options</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">131,936</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">332,935</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Weighted average common shares and common share equivalents outstanding–diluted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,158,297</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,088,664</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 66%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Average number of potentially dilutive securities excluded from calculation because their effect was anti-dilutive during the period</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">434,584</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">154,429</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 12026361 10755729 131936 332935 12158297 11088664 434584 154429 <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Effect of Recently Issued Amendments to Authoritative Accounting Guidance</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In <em style="font: inherit;"> November 2023, </em>the FASB issued amendments to the guidance for disclosures about reportable segments which require disclosures of significant expenses by segment and interim disclosure of items that were previously required on an annual basis. The amendments are to be applied on a retrospective basis and are effective for fiscal years beginning after <em style="font: inherit;"> December 15, 2023 </em>and interim periods within fiscal years beginning after <em style="font: inherit;"> December 15, 2024. </em>We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In <em style="font: inherit;"> December 2023, </em>the FASB issued amendments to the guidance for disclosures about income tax which provide for additional disclosures primarily related to the income tax rate reconciliations and income taxes paid. The amendments require entities to annually disclose the income tax rate reconciliation using both amounts and percentages, considering several categories of reconciling items, including state and local income taxes, foreign tax effects, tax credits and nontaxable or nondeductible items, among others. Disclosure of the reconciling items is subject to a quantitative threshold and disaggregation by nature and jurisdiction. The amendments also require entities to disclose net income taxes paid or received to federal, state and foreign jurisdictions, as well as by individual jurisdiction, subject to a <em style="font: inherit;">five</em> percent quantitative threshold. The amendments <em style="font: inherit;"> may </em>be adopted on a prospective or retrospective basis and are effective for fiscal years beginning after <em style="font: inherit;"> December 15, 2024 </em>with early adoption permitted. We are evaluating the impact of the amendments on disclosures in our consolidated financial statements.</p> <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">3</em>)</b></p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>ACQUISITION </b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> March 12, 2024 </em>we completed the acquisition of Alfamation S.p.A., an Italian joint-stock company (“Alfamation”). Alfamation is a leading global provider of state-of-the-art test and measurement solutions for the automotive, life sciences and specialty consumer electronics markets. Alfamation is included in our Electronic Test operating segment. The acquisition of Alfamation deepens our presence in the automotive/EV and life science markets, expands our exposure in consumer electronics, extends our geographic reach with a sizable footprint in Europe, and widens our portfolio of products and solutions. Additionally, we believe Alfamation brings engineering talent and a management team that culturally aligns with our mission to provide innovative, engineered solutions that address the high-value challenges of our customers. The aggregate purchase price was approximately EUR 20,000 comprised of: (i) EUR 18,000, or $19,674, in cash; and (ii) 187,432 shares of our common stock, valued at $2,086 based on the closing price of our stock on the date of acquisition. The cash portion of the purchase price is subject to customary working capital adjustments. We currently expect this to result in an additional payment of EUR 542, or $593 for assets delivered at closing in excess of agreed upon thresholds. The liabilities assumed in connection with the acquisition included debt of approximately EUR <em style="font: inherit;">8,616,</em> or <em style="font: inherit;">$9,418.</em> The debt assumed is discussed further in Note <em style="font: inherit;">10.</em> Total acquisition costs incurred to complete this transaction were $1,013. Acquisition costs were expensed as incurred and included in general and administrative expense.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">In connection with the acquisition, we have entered into a lease agreement (the “Lease Agreement”) with the former owner of Alfamation who will continue to serve as the managing director of Alfamation under our ownership. The Lease Agreement commenced on <em style="font: inherit;"> March 12, 2024 </em>and will last for <span style="-sec-ix-hidden:c112326587">six</span> years. It will be automatically renewed for the same period of time unless terminated by either party. Under the terms of the Lease Agreement, Alfamation will lease warehouse and office space totaling about 51,817 square feet. Alfamation will pay a yearly lease payment of EUR 260 broken up into <em style="font: inherit;">two</em> equal payments. At the date of the signing of the Lease Agreement, the yearly lease payment equated to approximately $284.<br/> <br/> The acquisition of Alfamation has been accounted for as a business combination using purchase accounting, and, accordingly, the results of Alfamation have been included in our consolidated results of operations from the date of acquisition. The allocation of the purchase price for Alfamation is <em style="font: inherit;">not</em> yet complete. The preliminary allocation of the Alfamation purchase price was based on estimated fair values as of <em style="font: inherit;"> March 12, 2024. </em>We are currently working with <em style="font: inherit;">third</em>-party valuation specialists to assist us with our purchase accounting. The information that needs to be gathered from multiple sources, including the records and personnel at Alfamation, is <em style="font: inherit;">not</em> yet fully assembled. As a result, the values reflected below are preliminary and we expect that they <em style="font: inherit;"> may </em>change. In particular, we expect that the total value assigned to our technology and customer relationships and the related deferred tax liabilities, the fair value of acquired accounts receivable, inventory and certain accrued expenses <em style="font: inherit;"> may </em>all change as we finalize our assessments. In addition, the final working capital adjustment has also <em style="font: inherit;">not</em> yet been completed. Adjustments to these preliminary amounts will be included in the final allocation of the purchase price for Alfamation, which we expect to finalize in the <em style="font: inherit;">second</em> or <em style="font: inherit;">third</em> quarter of <em style="font: inherit;">2024.</em> These adjustments could be material.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The excess of the purchase price over the identifiable intangible and net tangible assets was allocated to goodwill and is <em style="font: inherit;">not</em> deductible for tax purposes. Goodwill is attributed to synergies that are expected to result from the operations of the combined businesses.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The total purchase price of $22,353 has been allocated as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 54pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Goodwill</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,796</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Identifiable intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,087</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Tangible assets acquired and liabilities assumed:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 15%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">811</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade accounts receivable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,004</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Inventories</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,243</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other current assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,169</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,597</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,650</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accounts payable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,644</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accrued expenses</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,311</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other current liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(278</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Deferred tax liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,391</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Debt (current and long-term)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(9,418</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other non-current liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,962</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total purchase price</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">22,353</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We estimated the fair value of identifiable intangible assets acquired using the income approach. Identifiable intangible assets acquired include customer relationships, customer backlog, technology and a tradename. We are amortizing the finite-lived intangible assets acquired over their estimated useful lives based on the pattern in which the economic benefits of the intangible asset are expected to be consumed.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table summarizes the estimated fair value of Alfamation’s identifiable intangible assets and their estimated useful lives as of the acquisition date:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 54pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Value</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Weighted</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Average</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Estimated</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Useful Life</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(in years)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finite-lived intangible assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer relationships</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,949</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Technology</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">340</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer backlog</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,399</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total finite-lived intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,688</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9.9</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Indefinite-lived intangible assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade name</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,399</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,087</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">For the period from <em style="font: inherit;"> March 13, 2024 </em>to <em style="font: inherit;"> March 31, 2024, </em>Alfamation contributed $1,379 of revenue and had a net loss of $101.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following unaudited pro forma information gives effect to the acquisition of Alfamation as if the acquisition occurred on <em style="font: inherit;"> January 1, 2023. </em>These proforma summaries do <em style="font: inherit;">not</em> reflect any operating efficiencies or costs savings that <em style="font: inherit;"> may </em>be achieved by the combined businesses. These proforma summaries are presented for informational purposes only and are <em style="font: inherit;">not</em> necessarily indicative of what the actual results of operations would have been had the acquisition taken place as of that date, nor are they indicative of future consolidated results of operations:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 54pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Revenue</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">34,752</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38,473</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net earnings</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">480</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,227</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted earnings per share</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.04</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.29</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The pro forma results shown above do <em style="font: inherit;">not</em> reflect the impact on general and administrative expense of investment advisory costs, legal costs and other costs of $1,013 incurred by us as a direct result of the transaction.</p> 20000000 18000000 19674000 187432 2086000 542000 593000 1013000 51817 260000 284000 22353000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 54pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Goodwill</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,796</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Identifiable intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,087</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Tangible assets acquired and liabilities assumed:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 15%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">811</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade accounts receivable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,004</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Inventories</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,243</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other current assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,169</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Property and equipment</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,597</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,650</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accounts payable</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,644</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accrued expenses</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,311</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other current liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(278</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Deferred tax liability</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,391</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Debt (current and long-term)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(9,418</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other non-current liabilities</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(2,962</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total purchase price</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">22,353</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 11796000 13087000 811000 4004000 11243000 2169000 1597000 1650000 4644000 4311000 278000 2391000 9418000 2962000 22353000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 54pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Value</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Weighted</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Average</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Estimated</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Useful Life</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(in years)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finite-lived intangible assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer relationships</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,949</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Technology</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">340</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer backlog</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,399</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1.0</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total finite-lived intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,688</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9.9</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Indefinite-lived intangible assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade name</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,399</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,087</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px;"> </td></tr> </tbody></table> 5949000 P15Y 340000 P10Y 3399000 P1Y 9688000 P9Y10M24D 3399000 13087000 1379000 -101000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 54pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Revenue</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">34,752</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">38,473</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net earnings</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">480</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,227</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted earnings per share</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.04</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.29</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> 34752000 38473000 480000 3227000 0.04 0.29 1013000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">4</em>)</b></p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>FAIR VALUE MEASUREMENTS </b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">ASC Topic <em style="font: inherit;">820</em> (Fair Value Measurement) establishes a fair value hierarchy for instruments measured at fair value that distinguishes between assumptions based on market data (observable inputs) and our own assumptions (unobservable inputs). Observable inputs are inputs that market participants would use in pricing the asset or liability based on market data obtained from sources independent of us. Unobservable inputs are inputs that reflect our assumptions about the inputs that market participants would use in pricing the asset or liability and are developed based on the best information available in the circumstances.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">ASC <em style="font: inherit;">820</em> identifies fair value as the exchange price, or exit price, representing the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants. As a basis for considering market participant assumptions in fair value measurements, ASC <em style="font: inherit;">820</em> establishes a <em style="font: inherit;">three</em>-tier fair value hierarchy that distinguishes among the following:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Level <em style="font: inherit;">1</em> Valuations based on unadjusted quoted prices in active markets for identical assets or liabilities that we have the ability to access.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Level <em style="font: inherit;">2</em> Valuations based on quoted prices for similar assets or liabilities in active markets, quoted prices for identical or similar assets or liabilities in markets that are <em style="font: inherit;">not</em> active and models for which all significant inputs are observable, either directly or indirectly.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Level <em style="font: inherit;">3</em> Valuations based on inputs that are unobservable and significant to the overall fair value measurement.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">To the extent that the valuation is based on models or inputs that are less observable or unobservable in the market, the determination of fair value requires more judgment. Accordingly, the degree of judgment exercised by us in determining fair value is greatest for instruments categorized in Level <em style="font: inherit;">3.</em> A financial instrument's level within the fair value hierarchy is based on the lowest level of any input that is significant to the fair value measurement.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Recurring Fair Value Measurements</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The interest rate swap agreement we entered into in connection with our Term Note, as discussed further in Notes <em style="font: inherit;">2</em> and <em style="font: inherit;">10,</em> is measured at fair value on a recurring basis using Level <em style="font: inherit;">2</em> inputs. The contingent consideration liability on our balance sheet is measured at fair value on a recurring basis using Level <em style="font: inherit;">3</em> inputs. Our contingent consideration liability is a result of our acquisition of Acculogic on <em style="font: inherit;"> December 21, 2021, </em>and represents the estimated fair value of the additional cash consideration payable that is contingent upon sales to Electric Vehicle (“EV”) or battery customers. Our acquisition of Acculogic and this liability are both discussed further in Note <em style="font: inherit;">3</em> to our consolidated financial statements in our <em style="font: inherit;">2022</em> Form <em style="font: inherit;">10</em>-K. The current portion of our contingent consideration liability was $247 and $0 at <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023, </em>respectively, and was included in Other Current Liabilities on our consolidated balance sheets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following fair value hierarchy table presents information about assets and (liabilities) measured at fair value on a recurring basis:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amounts at</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value Measurement Using</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 1</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 2</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 3</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>As of March 31, 2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Contingent consideration liability – Acculogic</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,069</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,069</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Interest rate swap</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">271</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">271</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amounts at</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value Measurement Using</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 1</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 2</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 3</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>As of December 31, 2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Contingent consideration liability – Acculogic</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,093</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,093</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Interest rate swap</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">285</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">285</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Changes in the fair value of our Level <em style="font: inherit;">3</em> contingent consideration liabilities for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>were as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31, 2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,093</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(24</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,069</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 247000 0 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amounts at</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value Measurement Using</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 1</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 2</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 3</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>As of March 31, 2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Contingent consideration liability – Acculogic</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,069</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,069</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Interest rate swap</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">271</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">271</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amounts at</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value Measurement Using</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 1</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 2</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Level 3</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 44%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>As of December 31, 2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b> </b></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Contingent consideration liability – Acculogic</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,093</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(1,093</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Interest rate swap</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">285</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">285</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 11%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> 1069000 -0 -0 1069000 271000 0 271000 0 1093000 -0 -0 1093000 285000 0 285000 0 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31, 2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,093</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(24</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1,069</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 1093000 24000 1069000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">5</em>) </b></p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>GOODWILL AND INTANGIBLE ASSETS</b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have <em style="font: inherit;">three</em> operating segments which are also our reporting units: Electronic Test, Environmental Technologies and Process Technologies. Goodwill and intangible assets on our balance sheets are the result of our acquisitions.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Goodwill</span></i></b><br/> <br/> Changes in the amount of the carrying value of goodwill for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>are as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - January 1, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,728</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquisition of Alfamation</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,796</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(246</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - March 31, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33,278</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Goodwill was comprised of the following at <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023:</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,026</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,817</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,817</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">16,435</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">16,475</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total goodwill</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33,278</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">21,728</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Intangible Assets</span></i></b><br/> <br/> Changes in the amount of the carrying value of indefinite-lived intangible assets for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>are as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - January 1, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,398</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquisition of Alfamation</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,399</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(66</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - March 31, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,731</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Changes in the amount of the carrying value of finite-lived intangible assets for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>are as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - January 1, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,198</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquisition of Alfamation</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,688</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(203</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Amortization</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(595</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - March 31, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">17,088</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Intangible assets were allocated to our reporting segments at <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023 </em>as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,357</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,728</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">796</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">794</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,666</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12,074</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">28,819</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">16,596</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following tables provide further detail about our intangible assets as of <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023:</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31, 2024 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Gross</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Carrying</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Accumulated </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amortization</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Net</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Carrying</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 46%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finite-lived intangible assets:</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer relationships</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,202</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,082</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,120</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Technology</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,195</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,504</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,691</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Patents</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Backlog</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,851</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">574</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">3,277</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Software</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade name</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total finite-lived intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,248</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,160</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,088</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Indefinite-lived intangible assets: </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trademarks</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,731</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,731</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">41,979</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,160</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">28,819</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31, 2023 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Gross<br/> Carrying<br/> Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Accumulated </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amortization</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Net<br/> Carrying<br/> Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 46%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finite-lived intangible assets:</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer relationships</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,407</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,687</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,720</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Technology</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,895</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,417</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,478</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Patents</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Backlog</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">499</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">499</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Software</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade name</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total finite-lived intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,801</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,603</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,198</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Indefinite-lived intangible assets:</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trademarks</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,398</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,398</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,199</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,603</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">16,596</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We generally amortize our finite-lived intangible assets over their estimated useful lives based on the pattern in which the economic benefits of the intangible assets are expected to be consumed, or on a straight-line basis, if an alternate amortization method cannot be reliably determined. Any such alternate amortization method would be based on the pattern in which the economic benefits of the intangible asset are expected to be consumed. <em style="font: inherit;">None</em> of our intangible assets have any residual value.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table sets forth the estimated annual amortization expense for each of the next <em style="font: inherit;">five</em> years:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024 (remainder)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,384</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,863</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,577</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,083</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">952</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 90%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 83%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - January 1, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,728</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquisition of Alfamation</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,796</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(246</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - March 31, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 14%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33,278</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 21728000 11796000 -246000 33278000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,026</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,436</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,817</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,817</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">16,435</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">16,475</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total goodwill</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">33,278</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">21,728</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,357</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,728</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">796</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">794</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,666</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">12,074</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">28,819</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">16,596</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31, 2024 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Gross</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Carrying</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Accumulated </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amortization</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Net</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Carrying</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 46%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finite-lived intangible assets:</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer relationships</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">22,202</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,082</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,120</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Technology</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,195</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,504</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,691</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Patents</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Backlog</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,851</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">574</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">3,277</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Software</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade name</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total finite-lived intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">30,248</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,160</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,088</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Indefinite-lived intangible assets: </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trademarks</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,731</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,731</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">41,979</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">13,160</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">28,819</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="10" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31, 2023 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Gross<br/> Carrying<br/> Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Accumulated </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amortization</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Net<br/> Carrying<br/> Amount</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 46%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finite-lived intangible assets:</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Customer relationships</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,407</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,687</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,720</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Technology</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,895</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,417</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,478</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Patents</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">590</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Backlog</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">499</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">499</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Software</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">270</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trade name</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total finite-lived intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">20,801</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12,603</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,198</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Indefinite-lived intangible assets:</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Trademarks</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,398</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><em style="font: inherit;">-</em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,398</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total intangible assets</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,199</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,603</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">16,596</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 15026000 3436000 1817000 1817000 16435000 16475000 33278000 21728000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - January 1, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,398</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquisition of Alfamation</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,399</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(66</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - March 31, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,731</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 8398000 3399000 -66000 11731000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - January 1, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,198</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquisition of Alfamation</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,688</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Impact of foreign currency translation adjustments</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(203</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Amortization</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(595</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance - March 31, 2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">17,088</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 8198000 9688000 -203000 595000 17088000 16357000 3728000 796000 794000 11666000 12074000 28819000 16596000 22202000 10082000 12120000 3195000 1504000 1691000 590000 590000 3851000 574000 270000 270000 140000 140000 30248000 13160000 17088000 11731000 11731000 41979000 13160000 28819000 16407000 9687000 6720000 2895000 1417000 1478000 590000 590000 499000 499000 270000 270000 140000 140000 20801000 12603000 8198000 8398000 8398000 29199000 12603000 16596000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024 (remainder)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,384</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,863</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,577</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,083</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">952</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> 4384000 2863000 1577000 1083000 952000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">6</em>) </b></p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>REVENUE FROM CONTRACTS WITH CUSTOMERS</b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following tables provide additional information about our revenue from contracts with customers, including revenue by customer and product type and revenue by market. See also Note <em style="font: inherit;">14</em> for information about revenue by operating segment and geographic region.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended<br/> March 31, </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue by customer type:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">End user</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,430</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,704</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">OEM/Integrator</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,394</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,215</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue by product type:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Thermal test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,699</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,820</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Thermal process</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,955</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,822</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Semiconductor test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,282</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,105</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Video imaging</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,119</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,648</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Flying probe and in-circuit testers</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,744</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,160</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Alfamation products</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,379</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Service/other</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,646</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,364</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue by market:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Semiconductor</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,967</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,683</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Industrial</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,187</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,137</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Automotive (including Electric Vehicles)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,958</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,597</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Life Sciences</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">653</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,513</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Defense/aerospace</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,239</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,839</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Security</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">541</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">966</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,279</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,184</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 36pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended<br/> March 31, </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue by customer type:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">End user</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,430</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">21,704</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">OEM/Integrator</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,394</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,215</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue by product type:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Thermal test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,699</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,820</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Thermal process</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,955</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,822</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Semiconductor test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,282</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,105</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Video imaging</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,119</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,648</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Flying probe and in-circuit testers</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,744</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,160</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Alfamation products</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,379</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Service/other</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,646</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,364</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue by market:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Semiconductor</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">14,967</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,683</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Industrial</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,187</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,137</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Automotive (including Electric Vehicles)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,958</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,597</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Life Sciences</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">653</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,513</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Defense/aerospace</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,239</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,839</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Security</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">541</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">966</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,279</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,184</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 21430000 21704000 8394000 10215000 29824000 31919000 3699000 5820000 10955000 9822000 6282000 8105000 2119000 2648000 2744000 1160000 1379000 0 2646000 4364000 29824000 31919000 14967000 17683000 4187000 3137000 3958000 2597000 653000 1513000 3239000 2839000 541000 966000 2279000 3184000 29824000 31919000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">7</em>) </b></p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>MAJOR CUSTOMERS</b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">During the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024, </em><span style="-sec-ix-hidden:c112326839">one</span> customer accounted for 15% of our consolidated revenue. This revenue was primarily generated by our Electronic Test segment. <em style="font: inherit;">No</em> other customers accounted for <em style="font: inherit;">10%</em> or more of our consolidated revenue during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024. </em>During the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2023, </em><span style="-sec-ix-hidden:c112326845">one</span> customer accounted for 13% of our consolidated revenue. This revenue was primarily generated by our Electronic Test segment. <em style="font: inherit;">No</em> other customers accounted for <em style="font: inherit;">10%</em> or more of our consolidated revenue during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2023.</em></p> 0.15 0.13 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">8</em>) </b></p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>INVENTORIES</b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Inventories held at <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023 </em>were comprised of the following:</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31, </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31, </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,104</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,948</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,419</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,563</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Inventory consigned to others</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">114</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">98</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,694</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,480</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total inventories</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,331</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">20,089</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31, </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31, </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">17,104</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15,948</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">9,419</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,563</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Inventory consigned to others</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">114</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">98</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4,694</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,480</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total inventories</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,331</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">20,089</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 17104000 15948000 9419000 1563000 114000 98000 4694000 2480000 31331000 20089000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">9</em>)</b> </p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>LEASES</b> </p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">As previously discussed in Note <em style="font: inherit;">2,</em> we account for our leases in accordance with the guidance in ASC Topic <em style="font: inherit;">842.</em> We lease our offices, warehouse facilities and certain equipment under non-cancellable operating leases that expire at various dates through <em style="font: inherit;">2031.</em> Total operating lease and short-term lease costs for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023,</em> respectively, were as follows: </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease cost</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">451</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">400</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Short-term lease cost</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following is additional information about our leases as of <em style="font: inherit;"> March 31, 2024:</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Range of remaining lease terms (in years)</p> </td><td style="width: 2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">.5</td><td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font: inherit;">to</em></td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.1</td><td style="width: 2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average remaining lease term (in years)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.5</td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average discount rate</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">5.3%</td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Maturities of lease liabilities as of <em style="font: inherit;"> March 31, 2024 </em>were as follows:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,896</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,644</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,313</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,093</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">675</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Thereafter</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">869</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,490</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(829</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">6,661</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Cash Flow Information</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Total amortization of ROU assets for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023</em> was $403 and $391, respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">During the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>we acquired several auto leases in connection with our acquisition of Alfamation. The acquisition is discussed further in Note <em style="font: inherit;">3.</em> We also entered into the Lease Agreement, described in Note <em style="font: inherit;">3,</em> for the facility where Alfamation has its principal operations. This facility is owned by the seller. The leased premises include warehouse and office space totaling approximately 51,817 square feet. The yearly lease payment is EUR 260. The impact of the acquisition of these leases was a non-cash increase in our ROU assets and operating lease liabilities of approximately $1,758 at the date of the acquisition.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">During the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>we also extended the lease for the facility for our Environmental Technologies segment’s operation in Singapore. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $82.<br/> <br/> During the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2023, </em>we entered into a 25-month lease for a facility for our Environmental Technologies segment’s operation in Germany. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $90. During this same period, we entered into a 36-month lease for a car for <em style="font: inherit;">one</em> of the employees of our Process Technologies segment who is based in Europe. At the effective date of this lease, we recorded a non-cash increase in our ROU assets and operating lease liabilities of approximately $30.</p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease cost</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">451</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">400</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Short-term lease cost</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Range of remaining lease terms (in years)</p> </td><td style="width: 2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">.5</td><td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;"><em style="font: inherit;">to</em></td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7.1</td><td style="width: 2%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average remaining lease term (in years)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">4.5</td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 70%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average discount rate</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="width: 6%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: center;">5.3%</td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"><em style="font: inherit;"> </em></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 2%;"> </td></tr> </tbody></table> 451000 400000 3000 3000 P0Y6M P7Y1M6D P4Y6M 0.053 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,896</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,644</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,313</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,093</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">675</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Thereafter</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">869</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total lease payments</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,490</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less imputed interest</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(829</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">6,661</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 1896000 1644000 1313000 1093000 675000 869000 7490000 829000 6661000 403000 391000 51817 260000 1758000000 82000 P25M 90000 P36M 30000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">10</em>) </b></p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>DEBT </b></p> </td> </tr> </tbody> </table> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Letters of Credit</span></i></b><br/> <br/> We have issued letters of credit as the security deposits for certain of our domestic leases. These letters of credit are secured by pledged certificates of deposit which are classified as Restricted Certificates of Deposit on our balance sheets. The terms of our leases require us to renew these letters of credit at least <em style="font: inherit;">30</em> days prior to their expiration dates for successive terms of <em style="font: inherit;">not</em> less than <em style="font: inherit;">one</em> year until lease expiration. Our outstanding letters of credit at <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;"> December 31, 2023 </em>consisted of the following:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>L/C</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Lease</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 16%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Letters of Credit</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amount Outstanding</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Facility</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Original L/C</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Issue Date</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Expiration</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Date</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Expiration</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Date</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Mar. 31,</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Dec. 31,</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Mt. Laurel, NJ</p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326976">3/29/2010</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326977">4/30/2025</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326978">4/30/2031</span></p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Mansfield, MA</p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326981">10/27/2010</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326982">12/31/2024</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326983">12/31/2024</span></p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"><em style="font: inherit;"> </em></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"><em style="font: inherit;"> </em></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"><em style="font: inherit;"> </em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">100</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">100</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Credit Facility</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> October 15, 2021 (</em>the “Closing Date”), we entered into an Amended and Restated Loan and Security Agreement with M&amp;T Bank (“M&amp;T”) which, on <em style="font: inherit;"> October 28, 2021, </em>was amended by the Joinder and Amendment to Amended and Restated Loan and Security Agreement and which, on <em style="font: inherit;"> December 30, 2021, </em>was further amended by the Joinder and Second Amendment to Amended and Restated Loan and Security Agreement (as amended, the “Loan Agreement”).</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The Loan Agreement included a $25,000 non-revolving delayed draw term note (the “Term Note”) and a $10,000 revolving credit facility (the “Revolving Facility” and together with the Term Note, the “Credit Facility”). The Credit Facility had a <span style="-sec-ix-hidden:c112326936">five</span>-year contract period that began on the Closing Date and expired on <em style="font: inherit;"> October 15, 2026, </em>and draws under the Term Note were permissible for <span style="-sec-ix-hidden:c112326937">two</span> years.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> September 20, 2022, </em>we further amended the Loan Agreement by entering into a Third Amendment to Amended and Restated Loan and Security Agreement (the Loan Agreement, as amended by the Third Amendment, the “Third Amended Loan Agreement”) and the Third Amended and Restated Delayed Draw Term Note. Under the Third Amended Loan Agreement, the maximum loan amount that we <em style="font: inherit;"> may </em>borrow under the Term Note increased from $25,000 to $50,500, which raises the available funding at <em style="font: inherit;"> March 31, 2024 </em>to $30,000. On <em style="font: inherit;"> May 2, 2024 </em>we further amended our Third Amended Loan Agreement by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we <em style="font: inherit;"> may </em>request advances under the Term Note is extended until <em style="font: inherit;"> May 2, 2026, </em>and the Term Note and revolving credit facility maturity date is extended from <em style="font: inherit;"> September 19, 2027 </em>to <em style="font: inherit;"> May 2, 2031 (</em>the “Contract Period”). At <em style="font: inherit;"> March 31, 2024, </em>we had <span style="-sec-ix-hidden:c112326941">not</span> borrowed any amounts under the $10 million Revolving Facility. Our borrowings under the Term Note are discussed below and occurred prior to entering into the Amended Loan Agreement. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The principal balance of the Revolving Facility and the principal balance of any amount drawn under the Term Note accrues interest based on the secured overnight financing rate for U.S. government securities (“SOFR”) or a bank-defined base rate plus an applicable margin, depending on leverage. Each draw under the Term Note will have an option for us of either (i) up to a <em style="font: inherit;">five</em> year amortizing term loan with a balloon due at maturity, or (ii) up to a <em style="font: inherit;">five</em> year term with up to <em style="font: inherit;">seven</em> years amortization with a balloon due at maturity. Any amortization greater than <em style="font: inherit;">five</em> years will be subject to an excess cash flow recapture. The Amended Loan Agreement also allows us to enter into hedging contracts with M&amp;T, including interest rate swap agreements, interest rate cap agreements, interest rate collar agreements, or any other agreements or that are designed to protect us against fluctuations in interest rates or currency exchange rates. Interest expense for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023</em> was $140 and $182, respectively.<br/> <br/> The Amended Loan Agreement contains customary default provisions, including but <em style="font: inherit;">not</em> limited to the failure by us to repay obligations when due, violation of provisions or representations provided in the Amended Loan Agreement, bankruptcy by us, suspension of our business or any of our subsidiaries and certain material judgments. After expiration of the Contract Period or if a continued event of default occurs, interest will accrue on the principal balance at a rate of 2% in excess of the then applicable nondefault interest rate. The Amended Loan Agreement includes customary affirmative, negative and financial covenants, including a maximum ratio of consolidated funded debt to consolidated EBITDA of <em style="font: inherit;">not</em> more than 3.0 to <em style="font: inherit;">1.0</em> and a fixed charge coverage ratio of <em style="font: inherit;">not</em> less than 1.25 to <em style="font: inherit;">1.0.</em> Our obligations under the Amended Loan Agreement are secured by liens on substantially all of our tangible and intangible assets that are owned as of the Closing Date or acquired thereafter. At <em style="font: inherit;"> March 31, 2024, </em>we were in compliance with all of the covenants included in the Credit Facility including the debt covenants of the Amended Loan Agreement.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> October 28, 2021, </em>we drew $12,000 under the Term Note to finance the acquisition of Videology as discussed above. We also entered into an interest rate swap agreement with M&amp;T as of this date which is designed to protect us against fluctuations in interest rates during the <em style="font: inherit;">five</em> year repayment and amortization period. As a result, the annual interest rate we expect to pay for this draw under the Term Note is fixed at approximately 3.2% based on current leverage.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> December 29, 2021, </em>we drew $8,500 under the Term Note to finance the acquisition of Acculogic as discussed above. We did <em style="font: inherit;">not</em> enter into an interest rate swap agreement with M&amp;T related to this draw. The annual interest rate we expect to pay for this draw under the Term Note is variable. At <em style="font: inherit;"> March 31, 2024, </em>it was approximately 7.4% based on current leverage. Effective <em style="font: inherit;"> May 1, 2024, </em>this rate had <em style="font: inherit;">not</em> changed.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table sets forth the maturities of the Term Note for each of the next <em style="font: inherit;">five</em> years:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024 (remainder)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,075</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,100</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,842</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,017</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Alfamation Debt</span></i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">At <em style="font: inherit;"> March 31, 2024, </em>the total debt assumed in connection with the acquisition of Alfamation was valued at $9,420. The acquisition is discussed further in Note <em style="font: inherit;">3.</em> This debt is comprised of both fixed and variable rate bank issued term loans as well as $2,130 of short-term variable rate financing backed by Alfamation’s accounts receivable. This debt is spread across a number of different institutions with monthly, quarterly or half-yearly repayment schedules. The average interest rate being paid at <em style="font: inherit;"> March 31, 2024 </em>was 1.9% for fixed rate debt and 5.0% for variable rate debt. The average rate for total debt at <em style="font: inherit;"> March 31, 2024 </em>was 4.0%.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table sets forth the maturities of this debt for each of the next <em style="font: inherit;">five</em> years:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024 (remainder)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,987</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,085</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,293</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">807</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">248</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,420</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>L/C</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Lease</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 16%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Letters of Credit</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Amount Outstanding</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Facility</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Original L/C</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Issue Date</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Expiration</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Date</b></p> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Expiration</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Date</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Mar. 31,</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Dec. 31,</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023 </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Mt. Laurel, NJ</p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326976">3/29/2010</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326977">4/30/2025</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326978">4/30/2031</span></p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Mansfield, MA</p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326981">10/27/2010</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326982">12/31/2024</span></p> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: right; margin: 0pt;"><span style="-sec-ix-hidden:c112326983">12/31/2024</span></p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 31%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"><em style="font: inherit;"> </em></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"><em style="font: inherit;"> </em></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 12%;"><em style="font: inherit;"> </em></td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">100</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">100</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 50000 50000 50000 50000 100000 100000 25000000 10000000 25000000 50500000 30000000 10000000 140000 182000 0.02 3 1.25 12000000 0.032 8500000 0.074 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024 (remainder)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,075</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,100</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,842</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">11,017</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 82%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2024 (remainder)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,987</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,085</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,293</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">807</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">248</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,420</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 3075000 4100000 3842000 11017000 9420000 2130000 0.019 0.05 0.04 4987000 2085000 1293000 807000 248000 9420000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">11</em>)</b> </p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>STOCK-BASED COMPENSATION PLAN</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">As of <em style="font: inherit;"> March 31, 2024, </em>we had unvested restricted stock awards and stock options granted under stock-based compensation plans that are described more fully in Note <em style="font: inherit;">13</em> to the consolidated financial statements in our <em style="font: inherit;">2023</em> Form <em style="font: inherit;">10</em>-K.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our unvested restricted stock awards and stock options are accounted for based on their grant date fair value. As of <em style="font: inherit;"> March </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2024,</em> total compensation expense to be recognized in future periods was $4,813. The weighted average period over which this expense is expected to be recognized was 2.5 years.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table summarizes the compensation expense we recorded during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023</em> related to unvested shares of restricted stock and stock options:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Cost of revenue</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">31</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Selling expense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Engineering and product development expense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">General and administrative expense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">303</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">435</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">349</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">474</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">There was no compensation expense capitalized in <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>or <em style="font: inherit;">2023.</em> </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Stock Options</span></i></b><br/> <br/> We record compensation expense for stock options based on the fair market value of the options as of the grant date. <em style="font: inherit;">No</em> option <em style="font: inherit;"> may </em>be granted with an exercise period in excess of <span style="-sec-ix-hidden:c112327017">ten</span> years from the date of grant. Generally, stock options will be granted with an exercise price equal to the fair market value of our stock on the date of grant and will vest over <span style="-sec-ix-hidden:c112327018">four</span> years.<br/> <br/> The fair value for stock options granted during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023</em> was estimated at the date of grant using the Black-Scholes option pricing model with the following weighted average assumptions:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Risk-free interest rate</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.98</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.94</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Dividend yield</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Expected common stock market price volatility factor</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">.57</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">.57</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average expected life of stock options (years)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The per share weighted average fair value of stock options issued during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023</em> was $6.55 and $9.32, respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table summarizes the activity related to stock options for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024:</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Number</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>of Shares</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Weighted</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Average</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Exercise Price</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="GFJY4-DGU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, January 1, 2024 (<span style="-sec-ix-hidden:c112328696">171,735</span> exercisable)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">505,006</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.46</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Granted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">165,364</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.33</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,925</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.69</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Canceled</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(23,401</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.27</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, March 31, 2024 (<span style="-sec-ix-hidden:c112328698">228,364</span> exercisable)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">642,044</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.74</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"><b><i><span style="text-decoration: underline; ">Restricted Stock Awards</span></i></b><br/> <br/> We record compensation expense for restricted stock awards based on the quoted market price of our stock at the grant date and amortize the expense over the vesting period. Restricted stock awards generally vest over <span style="-sec-ix-hidden:c112327026">four</span> years for employees and over <span style="-sec-ix-hidden:c112327027">one</span> year for our independent directors (25% at each of <em style="font: inherit;"> March 31, </em><em style="font: inherit;"> June 30, </em><em style="font: inherit;"> September 30, </em>and <em style="font: inherit;"> December 31 </em>of the year in which they were granted).</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Since <em style="font: inherit;"> August 2020, </em>we have increasingly granted performance-based restricted stock awards where the ultimate number of shares that vest can vary between 0% and 150% of the amount of the original award and is based on the achievement of specified performance metrics. Vesting for these awards is generally cliff vesting at the end of the period over which the performance metrics are measured. Compensation expense for these awards is recorded on a straight-line basis over the vesting period and is based on the expected final vesting percentage, which is re-assessed at the end of each reporting period and adjusted with a catch-up adjustment, as needed. Our initial assumption at the grant date of these awards is that the award will vest at the 100% level.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> March 10, 2021, </em>we issued restricted stock awards totaling 18,000 shares to members of senior management within our operating segments. During the <em style="font: inherit;">first</em> quarter of <em style="font: inherit;">2023,</em> 6,000 of these shares were forfeited when the individual to whom they had been granted resigned from his position with us. The remaining 12,000 shares vested on the <em style="font: inherit;">third</em> anniversary of the grant date at vesting percentages of 75% for 6,000 of the shares and 100% for the remaining 6,000 shares. The final vesting percentages were based on the achievement of certain performance metrics related to the operating results of the business units for which these members of management are responsible.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> October 1, 2021, </em>we issued restricted stock awards totaling 5,000 shares to a member of senior management. These shares will vest on <em style="font: inherit;"> January 1, 2025 </em>at a vesting percentage that could range from 0% to 150% of the number of shares awarded on <em style="font: inherit;"> October 1, 2021. </em>The final vesting percentage will be based on the achievement of certain performance metrics related to our consolidated operating results. At <em style="font: inherit;"> December 31, 2023, </em>we reduced the estimate of the final vesting percentage to 50%. At <em style="font: inherit;"> March 31, 2024, </em>this estimate was further reduced to 0% based on our current assessment of the probable achievement against the relevant performance metrics.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> March 9, 2022, </em>our CEO and CFO received restricted stock awards totaling 20,493 shares valued at $200 as of the date of grant. These shares vest on the <em style="font: inherit;">third</em> anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on <em style="font: inherit;"> March 9, 2022. </em>The final vesting percentage will be based on the achievement of certain performance metrics, including revenue compound annual growth rate and diluted earnings per share excluding amortization of intangibles, for specified time periods as determined by the Compensation Committee of our Board of Directors. At <em style="font: inherit;"> December 31, 2023, </em>we reduced the estimate of the final vesting percentage to 50%. At <em style="font: inherit;"> March 31, 2024, </em>this estimate was further reduced to 0% based on our current assessment of the probable achievement against the relevant performance metrics. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> March 8, 2023, </em>our CEO, CFO and the Division Presidents of <span style="-sec-ix-hidden:c112327055">two</span> of our operating segments received restricted stock awards totaling 18,888 shares valued at $303 as of the date of grant. These shares vest on the <em style="font: inherit;">third</em> anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on <em style="font: inherit;"> March 8, 2023. </em>The final vesting percentage will be based on the achievement of certain performance metrics related to revenue for the year ending <em style="font: inherit;"> December 31, 2025 </em>as determined by the Compensation Committee of our Board of Directors. At <em style="font: inherit;"> March 31, 2024, </em>we have estimated that these shares will vest at 100% of the original amount based on our assessment of the probable achievement against the relevant performance metrics. <br/> <br/> On <em style="font: inherit;"> May 8, 2023 </em>the newly appointed president of our Environmental Technologies segment received performance-based restricted stock awards totaling 5,081 shares valued at $108 as of the date of grant. These shares vest on the <em style="font: inherit;">third</em> anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares of restricted stock awarded on <em style="font: inherit;"> May 8, 2023. </em>The final vesting percentage will be based on the achievement of certain performance metrics including revenue and income from operations for specified time periods. As of <em style="font: inherit;"> March 31, 2024, </em>we have estimated that these shares will vest at 100% of the original amount.<br/> <br/> On <em style="font: inherit;"> January 16, 2024 </em>the newly appointed president of our Process Technologies segment received performance-based restricted stock awards totaling 8,231 shares valued at $100 as of the date of grant. These shares vest on the <em style="font: inherit;">third</em> anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares of restricted stock awarded on <em style="font: inherit;"> January 16, 2024. </em>The final vesting percentage will be based on the achievement of certain performance metrics including revenue and income from operations for specified time periods. As of <em style="font: inherit;"> March 31, 2024, </em>we have estimated that these shares will vest at 100% of the original amount.<br/> <br/> On <em style="font: inherit;"> March 6, 2024, </em>our CEO, CFO and the Division Presidents of our <em style="font: inherit;">three</em> operating segments received restricted stock awards totaling 33,539 shares valued at $380 as of the date of grant. These shares vest on the <em style="font: inherit;">third</em> anniversary of the grant date at a vesting percentage that could range from 0% to 150% of the number of shares awarded on <em style="font: inherit;"> March 6, 2024. </em>The final vesting percentage will be based on the achievement of certain performance metrics related to adjusted EBITDA for the year ended <em style="font: inherit;"> December 31, 2026 </em>as determined by the Compensation Committee of our Board of Directors. At <em style="font: inherit;"> March 31, 2024, </em>we have estimated that these shares will vest at 100% of the original amount based on our assessment of the probable achievement against the relevant performance metrics. </p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table summarizes the activity related to unvested restricted stock awards for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2024:</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Number</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>of Shares</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Weighted</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Average</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Grant Date</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares outstanding, January 1, 2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">189,784</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.51</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Granted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">138,838</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.38</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Vested</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(39,790</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.52</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(11,200</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12.29</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares outstanding, March 31, 2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">277,632</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.41</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The total fair value of the restricted stock awards that vested during the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023</em> was $463 and $381, respectively, as of the vesting dates of these awards. </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> 4813000 P2Y6M <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Cost of revenue</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">31</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">19</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Selling expense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Engineering and product development expense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">General and administrative expense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">303</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">435</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">349</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">474</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 31000 19000 11000 10000 4000 10000 303000 435000 349000 474000 0 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Risk-free interest rate</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.98</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.94</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Dividend yield</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">0.00</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Expected common stock market price volatility factor</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">.57</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">.57</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average expected life of stock options (years)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6.25</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> 0.0398 0.0394 0 0 0.57 0.57 P6Y3M P6Y3M 6.55 9.32 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Number</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>of Shares</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Weighted</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Average</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Exercise Price</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr class="GFJY4-DGU-com-rdg-thunderdome-client-resources-CssResource-html-lineItem-v2v-addition" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, January 1, 2024 (<span style="-sec-ix-hidden:c112328696">171,735</span> exercisable)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">505,006</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.46</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Granted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">165,364</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.33</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Exercised</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(4,925</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.69</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Canceled</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(23,401</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.27</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Options outstanding, March 31, 2024 (<span style="-sec-ix-hidden:c112328698">228,364</span> exercisable)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">642,044</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10.74</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 505006 10.46 165364 11.33 4925 3.69 23401 10.27 642044 10.74 0.25 0 1.50 1 18000 6000 12000 0.75 6000 1 6000 5000 0 1.50 0.50 0 20493 200000 0 1.50 0.50 0 18888 303000 0 1.50 1 5081 108000 0 1.50 1 8231 100000 0 1.50 1 33539 380000 0 1.50 1 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"><tbody><tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Number</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>of Shares</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Weighted</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Average</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Grant Date</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Fair Value</b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares outstanding, January 1, 2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">189,784</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.51</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Granted</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">138,838</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.38</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Vested</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(39,790</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.52</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Forfeited</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(11,200</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">12.29</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unvested shares outstanding, March 31, 2024</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">277,632</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11.41</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 189784 11.51 138838 11.38 39790 11.52 11200 12.29 277632 11.41 463000 381000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">12</em>)</b> </p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>EMPLOYEE STOCK PURCHASE PLAN </b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The inTEST Corporation Employee Stock Purchase Plan (the “ESPP”) was adopted by the Board in <em style="font: inherit;"> April 2021 </em>subject to approval by our stockholders, which occurred on <em style="font: inherit;"> June 23, 2021 </em>at our Annual Meeting of Stockholders. The ESPP provides our eligible employees with an opportunity to purchase common stock through accumulated payroll deductions at a discounted purchase price. The ESPP became effective on <em style="font: inherit;"> October 1, 2021.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The ESPP provides that an aggregate of up to 250,000 shares of our common stock will be available for issuance under the ESPP. The shares of our common stock purchasable under the ESPP will be shares of authorized but unissued or reacquired shares, including shares repurchased by us on the open market.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> March 31, 2024, </em>employees purchased 4,104 shares of our stock through the ESPP at a cost of $46. The closing market price on the date of the purchase was $13.25. The price paid by employees was $11.26 which represented a 15% discount. The total amount of the discount of $8 was recorded as compensation expense in our consolidated statements of operations. From the effective date of the ESPP through <em style="font: inherit;"> March 31, 2024, </em>a total of 47,037 shares of stock have been purchased by employees through the ESPP at a cost of $460. We have recorded a total of $81 of compensation expense in our consolidated statements of operations related to these shares.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> 250000 4104 46000 13.25 11.26 0.15 8000 47037 460000 81000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">13</em>)</b> </p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>EMPLOYEE BENEFIT PLANS</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have defined contribution <em style="font: inherit;">401</em>(k) plans for our employees who work in the U.S. These plans include the inTEST Corporation Incentive Savings Plan (the “inTEST Plan”) and the Ambrell Corporation Savings &amp; Profit Sharing Plan (the "Ambrell Plan"). During the quarter ended <em style="font: inherit;"> September 30, 2023, </em>the Ambrell Plan, which is discussed further below, was merged into the inTEST Plan.<br/> <br/> As of <em style="font: inherit;"> March 31, 2024, </em>all permanent employees of Acculogic Ltd, Ambrell, inTEST Corporation, inTEST EMS LLC, Temptronic Corporation and Videology, who are at least <em style="font: inherit;">18</em> years of age, are eligible to participate in the inTEST Plan. We match employee contributions dollar for dollar up to 10% of the employee's annual compensation, with a maximum limit of $5. Employer contributions vest ratably over <span style="-sec-ix-hidden:c112327181">four</span> years. Matching contributions are discretionary. Prior to the merger with the inTEST Plan, all permanent employees of Ambrell were immediately eligible to participate in the Ambrell Plan upon employment and were eligible for employer matching contributions after completing <em style="font: inherit;">six</em> months of service, as defined in the Ambrell Plan. The Ambrell Plan allowed eligible employees to make voluntary contributions up to 100% of compensation, up to the federal government contribution limits. We made a matching contribution of 50% of each employee's contributions up to a maximum of 10% of the employee's deferral with a maximum limit of $5.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">For the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> March 31, 2024 </em>and <em style="font: inherit;">2023,</em> we recorded expense for matching contributions to both plans of $389 and $372, respectively.<br/> <br/> Employees of Alfamation in Italy are entitled to Trattamento di Fine Rapporto (“TFR”), commonly referred to as an employee leaving indemnity, which represents deferred compensation for employees. Under Italian law, an entity is obligated to accrue for TFR on an individual employee basis payable to each individual upon termination of employment (including both voluntary and involuntary dismissal). The expense is recognized in personnel costs in our consolidated statements of operations and the required accrual is included in Other Liabilities on our consolidated balance sheets. At <em style="font: inherit;"> March 31, 2024, </em>the amount recorded in Other Liabilities for TFR was $1,596.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"> </p> 0.10 5000 1 0.50 0.10 5000 389000 372000 1596000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">14</em>)</b> </p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>SEGMENT INFORMATION</b></p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">We have <span style="-sec-ix-hidden:c112327195">three</span> operating segments which are also our reportable segments and reporting units: Electronic Test (which includes our semiconductor test equipment, flying probe and in-circuit testers and the operations of Alfamation which we acquired on <em style="font: inherit;"> March 12, 2024 </em>as discussed further in Note <em style="font: inherit;">3</em>), Environmental Technologies (which includes our thermal test, process and storage products) and Process Technologies (which includes our induction heating and video imaging products). We operate our business worldwide and sell our products both domestically and internationally. All of our segments sell to semiconductor manufacturers, <em style="font: inherit;">third</em>-party test and assembly houses and ATE manufacturers and to a variety of markets outside of the semi market, including the automotive, defense/aerospace, industrial, life sciences, security and other markets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Our management team, including our CEO who is also our Chief Operating Decision Maker as defined under U.S. GAAP, evaluates the performance of our operating segments primarily on income from divisional operations which represents earnings before income tax expense and excludes interest expense, other income (expense), corporate expenses and acquired intangible amortization.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,116</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,371</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,828</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,042</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,880</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">13,506</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total revenue</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Income from divisional operations:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,813</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,578</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,013</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,961</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,676</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total income from divisional operations</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,789</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,267</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Corporate expenses</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,702</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,205</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquired intangible amortization</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(595</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(544</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Interest expense</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(182</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other income (expense)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">435</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">58</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Earnings before income tax expense</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">787</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,394</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Identifiable assets: </i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,508</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,505</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,624</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,772</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">57,815</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,842</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Corporate</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,580</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">28,710</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">159,527</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">134,829</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">The following table provides information about our geographic areas of operation. Revenue is based on the location to which the goods are shipped.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended<br/> March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">U.S.</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,477</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,090</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Foreign</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">19,347</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">20,829</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Property and equipment:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">U.S.</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,502</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,502</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Foreign</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,269</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">688</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,771</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,190</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended</b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,116</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,371</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,828</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,042</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">11,880</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">13,506</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total revenue</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Income from divisional operations:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,813</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,578</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">15</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">1,013</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,961</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,676</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total income from divisional operations</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,789</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">6,267</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Corporate expenses</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,702</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(2,205</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Acquired intangible amortization</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(595</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(544</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Interest expense</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(182</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Other income (expense)</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">435</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">58</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Earnings before income tax expense</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">787</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,394</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 11116000 10371000 6828000 8042000 11880000 13506000 29824000 31919000 1813000 2578000 15000 1013000 1961000 2676000 3789000 6267000 -2702000 -2205000 595000 544000 140000 182000 435000 58000 787000 3394000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Identifiable assets: </i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Electronic Test</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">75,508</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">32,505</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Environmental Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,624</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">16,772</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Process Technologies</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">57,815</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">56,842</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Corporate</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">9,580</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">28,710</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">159,527</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">134,829</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 75508000 32505000 16624000 16772000 57815000 56842000 9580000 28710000 159527000 134829000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Three Months Ended<br/> March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Revenue:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">U.S.</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">10,477</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">11,090</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Foreign</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">19,347</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">20,829</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">29,824</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,919</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 10477000 11090000 19347000 20829000 29824000 31919000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 15%; width: 85%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 63pt;"> <tbody> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>March 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>December 31,</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> </tr> <tr class="finHeading" style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2024</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>2023</b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 64%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><i>Property and equipment:</i></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><i><b> </b></i></td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">U.S.</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,502</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,502</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Foreign</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,269</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">688</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,771</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 15%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,190</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td> </tr> </tbody> </table> 2502000 2502000 2269000 688000 4771000 3190000 <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"> <tbody> <tr style="vertical-align: top;"> <td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">15</em>)</b> </p> </td> <td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>SUBSEQUENT EVENT</b> </p> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">On <em style="font: inherit;"> May 2, 2024 </em>we further amended our Loan Agreement with M&amp;T, which is discussed in Note <em style="font: inherit;">10,</em> by entering into a Fourth Amendment to the Amended and Restated Loan and Security Agreement (the “Amended Loan Agreement”). Under the Amended Loan Agreement, the period during which we <em style="font: inherit;"> may </em>request advances under the Term Note is extended until <em style="font: inherit;"> May 2, 2026, </em>and the Term Note and revolving credit facility maturity date is extended from <em style="font: inherit;"> September 19, 2027 </em>to <em style="font: inherit;"> May 2, 2031.</em></p> <table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"><tbody><tr style="vertical-align: top;"><td style="width: 36pt;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Item <em style="font: inherit;">5.</em> </b></p> </td><td style="width: auto;"> <p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Other Information</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">During the <em style="font: inherit;">first</em> quarter ended <em style="font: inherit;"> March 31, 2024, </em><span style="-sec-ix-hidden:c112327257"><span style="-sec-ix-hidden:c112327258"><span style="-sec-ix-hidden:c112327259"><span style="-sec-ix-hidden:c112327260">none</span></span></span></span> of the Company's directors or officers (as defined in Section <em style="font: inherit;">16</em> of the Securities Exchange Act of <em style="font: inherit;">1934</em>) adopted or terminated a "Rule <em style="font: inherit;">10b5</em>-<em style="font: inherit;">1</em> trading arrangement" or a "non-Rule <em style="font: inherit;">10b5</em>-<em style="font: inherit;">1</em> trading arrangement," as each term is defined in Item <em style="font: inherit;">408</em>(a) of Regulation S-K of the Securities Exchange Act of <em style="font: inherit;">1934.</em></p>