0001171843-23-005131.txt : 20230809 0001171843-23-005131.hdr.sgml : 20230809 20230809090043 ACCESSION NUMBER: 0001171843-23-005131 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 87 CONFORMED PERIOD OF REPORT: 20230630 FILED AS OF DATE: 20230809 DATE AS OF CHANGE: 20230809 FILER: COMPANY DATA: COMPANY CONFORMED NAME: UFP TECHNOLOGIES INC CENTRAL INDEX KEY: 0000914156 STANDARD INDUSTRIAL CLASSIFICATION: SURGICAL & MEDICAL INSTRUMENTS & APPARATUS [3841] IRS NUMBER: 042314970 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-12648 FILM NUMBER: 231153571 BUSINESS ADDRESS: STREET 1: 100 HALE STREET CITY: NEWBURYPORT STATE: MA ZIP: 01950 BUSINESS PHONE: 978-352-2200 MAIL ADDRESS: STREET 1: 100 HALE STREET CITY: NEWBURYPORT STATE: MA ZIP: 01950 10-Q 1 ufpt20230630_10q.htm FORM 10-Q ufpt20230630_10q.htm
0000914156 UFP TECHNOLOGIES INC false --12-31 Q2 2023 0.01 0.01 1,000,000 1,000,000 0 0 0.01 0.01 20,000,000 20,000,000 7,668,371 7,638,812 7,611,244 7,581,685 29,559 29,559 19.0 20 10 36.6 40.6 0 0 3.6 3.9 111.54 167.98 6.2 6.8 37.81 71.17 9,876 1 1 1 1 0.25 00009141562023-01-012023-06-30 xbrli:shares 00009141562023-08-01 iso4217:USD 00009141562023-06-30 00009141562022-12-31 iso4217:USDxbrli:shares 00009141562023-04-012023-06-30 00009141562022-04-012022-06-30 00009141562022-01-012022-06-30 0000914156ufpt:CommonStockOutstandingMember2022-12-31 0000914156us-gaap:AdditionalPaidInCapitalMember2022-12-31 0000914156us-gaap:RetainedEarningsMember2022-12-31 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-31 0000914156us-gaap:TreasuryStockCommonMember2022-12-31 0000914156ufpt:CommonStockOutstandingMember2023-01-012023-03-31 0000914156us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-31 0000914156us-gaap:RetainedEarningsMember2023-01-012023-03-31 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-31 0000914156us-gaap:TreasuryStockCommonMember2023-01-012023-03-31 00009141562023-01-012023-03-31 0000914156ufpt:CommonStockOutstandingMember2023-03-31 0000914156us-gaap:AdditionalPaidInCapitalMember2023-03-31 0000914156us-gaap:RetainedEarningsMember2023-03-31 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-31 0000914156us-gaap:TreasuryStockCommonMember2023-03-31 00009141562023-03-31 0000914156ufpt:CommonStockOutstandingMember2023-04-012023-06-30 0000914156us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-30 0000914156us-gaap:RetainedEarningsMember2023-04-012023-06-30 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-30 0000914156us-gaap:TreasuryStockCommonMember2023-04-012023-06-30 0000914156ufpt:CommonStockOutstandingMember2023-06-30 0000914156us-gaap:AdditionalPaidInCapitalMember2023-06-30 0000914156us-gaap:RetainedEarningsMember2023-06-30 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-30 0000914156us-gaap:TreasuryStockCommonMember2023-06-30 0000914156ufpt:CommonStockOutstandingMember2021-12-31 0000914156us-gaap:AdditionalPaidInCapitalMember2021-12-31 0000914156us-gaap:RetainedEarningsMember2021-12-31 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-31 0000914156us-gaap:TreasuryStockCommonMember2021-12-31 00009141562021-12-31 0000914156ufpt:CommonStockOutstandingMember2022-01-012022-03-31 0000914156us-gaap:AdditionalPaidInCapitalMember2022-01-012022-03-31 0000914156us-gaap:RetainedEarningsMember2022-01-012022-03-31 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-03-31 0000914156us-gaap:TreasuryStockCommonMember2022-01-012022-03-31 00009141562022-01-012022-03-31 0000914156ufpt:CommonStockOutstandingMember2022-03-31 0000914156us-gaap:AdditionalPaidInCapitalMember2022-03-31 0000914156us-gaap:RetainedEarningsMember2022-03-31 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-03-31 0000914156us-gaap:TreasuryStockCommonMember2022-03-31 00009141562022-03-31 0000914156ufpt:CommonStockOutstandingMember2022-04-012022-06-30 0000914156us-gaap:AdditionalPaidInCapitalMember2022-04-012022-06-30 0000914156us-gaap:RetainedEarningsMember2022-04-012022-06-30 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-012022-06-30 0000914156us-gaap:TreasuryStockCommonMember2022-04-012022-06-30 0000914156ufpt:CommonStockOutstandingMember2022-06-30 0000914156us-gaap:AdditionalPaidInCapitalMember2022-06-30 0000914156us-gaap:RetainedEarningsMember2022-06-30 0000914156us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-06-30 0000914156us-gaap:TreasuryStockCommonMember2022-06-30 00009141562022-06-30 0000914156ufpt:AdvantMedicalMember2023-01-012023-06-30 0000914156ufpt:AdvantMedicalMember2022-01-012022-06-30 0000914156ufpt:DasMedicalMember2023-01-012023-06-30 0000914156ufpt:DasMedicalMember2022-01-012022-06-30 0000914156ufpt:MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember2022-07-26 0000914156ufpt:MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMemberus-gaap:ScenarioAdjustmentMember2022-07-26 0000914156ufpt:MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember2022-01-012022-12-31 xbrli:pure 0000914156ufpt:AdvantMedicalMember2022-03-16 iso4217:EUR 0000914156ufpt:AdvantMedicalMember2022-03-162022-03-16 0000914156ufpt:AdvantMedicalMember2022-03-172022-03-17 0000914156ufpt:AdvantMedicalMember2022-03-17 0000914156ufpt:AdvantMedicalMemberufpt:CustomerContractsAndRelationshipsMember2022-03-17 0000914156ufpt:AdvantMedicalMemberus-gaap:IntellectualPropertyMember2022-03-17 0000914156ufpt:AdvantMedicalMemberus-gaap:NoncompeteAgreementsMember2022-03-17 0000914156ufpt:DasMedicalMember2022-04-012022-06-30 0000914156ufpt:DasMedicalMember2021-01-012021-12-31 0000914156ufpt:ContechMedicalIncMember2022-04-012022-06-30 0000914156ufpt:ContechMedicalIncMember2022-01-012022-06-30 0000914156us-gaap:ProductMember2023-04-012023-06-30 0000914156us-gaap:ProductMember2022-04-012022-06-30 0000914156us-gaap:ProductMember2023-01-012023-06-30 0000914156us-gaap:ProductMember2022-01-012022-06-30 0000914156ufpt:ToolingAndMachineryMember2023-04-012023-06-30 0000914156ufpt:ToolingAndMachineryMember2022-04-012022-06-30 0000914156ufpt:ToolingAndMachineryMember2023-01-012023-06-30 0000914156ufpt:ToolingAndMachineryMember2022-01-012022-06-30 0000914156ufpt:EngineeringAndDevelopmentMember2023-04-012023-06-30 0000914156ufpt:EngineeringAndDevelopmentMember2022-04-012022-06-30 0000914156ufpt:EngineeringAndDevelopmentMember2023-01-012023-06-30 0000914156ufpt:EngineeringAndDevelopmentMember2022-01-012022-06-30 0000914156ufpt:DeferredRevenueMember2023-04-012023-06-30 0000914156ufpt:DeferredRevenueMember2023-01-012023-06-30 0000914156ufpt:DeferredRevenueMember2022-04-012022-06-30 0000914156ufpt:DeferredRevenueMember2022-01-012022-06-30 0000914156us-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2023-06-30 0000914156us-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2022-12-31 0000914156ufpt:ContechMedicalIncAndDasMedicalMember2022-12-312022-12-31 0000914156ufpt:ContechMedicalIncAndDasMedicalMember2023-03-312023-03-31 0000914156ufpt:ContechMedicalIncAndDasMedicalMember2023-04-012023-06-30 0000914156ufpt:ContechMedicalIncAndDasMedicalMember2023-06-30 0000914156ufpt:ContechMedicalIncAndDasMedicalMember2023-01-012023-06-30 0000914156ufpt:DasMedicalMemberufpt:NoncompetitionAgreementsMember2021-12-222021-12-22 utr:Y 0000914156us-gaap:CommonStockMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-04-012023-06-30 0000914156us-gaap:CommonStockMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-04-012022-06-30 0000914156us-gaap:CommonStockMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-06-30 0000914156us-gaap:CommonStockMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-04-012023-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-04-012022-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-04-012023-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-04-012022-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMemberus-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-06-30 0000914156us-gaap:SellingGeneralAndAdministrativeExpensesMember2023-04-012023-06-30 0000914156us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-04-012022-06-30 0000914156us-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-06-30 0000914156us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMember2022-12-31 0000914156ufpt:EmployeeAndNonemployeeStockOptionMember2023-01-012023-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMember2023-01-012023-03-31 0000914156ufpt:EmployeeAndNonemployeeStockOptionMember2023-06-30 0000914156srt:DirectorMember2023-06-072023-06-07 0000914156srt:DirectorMember2023-06-07 0000914156ufpt:PresidentAndChiefExecutiveOfficerMember2023-02-142023-06-07 0000914156ufpt:PresidentAndChiefExecutiveOfficerMember2023-06-07 0000914156srt:MinimumMember2023-01-012023-06-30 0000914156srt:MaximumMember2023-01-012023-06-30 0000914156srt:MinimumMember2023-06-30 0000914156srt:MaximumMember2023-06-30 0000914156ufpt:EmployeeAndNonemployeeStockOptionMember2022-01-012022-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMember2022-12-31 0000914156us-gaap:RestrictedStockUnitsRSUMember2023-01-012023-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMember2023-06-30 0000914156us-gaap:RestrictedStockUnitsRSUMember2022-01-012022-06-30 0000914156us-gaap:LandAndLandImprovementsMember2023-06-30 0000914156us-gaap:LandAndLandImprovementsMember2022-12-31 0000914156us-gaap:BuildingAndBuildingImprovementsMember2023-06-30 0000914156us-gaap:BuildingAndBuildingImprovementsMember2022-12-31 0000914156us-gaap:LeaseholdImprovementsMember2023-06-30 0000914156us-gaap:LeaseholdImprovementsMember2022-12-31 0000914156us-gaap:MachineryAndEquipmentMember2023-06-30 0000914156us-gaap:MachineryAndEquipmentMember2022-12-31 0000914156ufpt:FurnitureFixturesAndComputersMember2023-06-30 0000914156ufpt:FurnitureFixturesAndComputersMember2022-12-31 0000914156us-gaap:ConstructionInProgressMember2023-06-30 0000914156us-gaap:ConstructionInProgressMember2022-12-31 0000914156ufpt:RightOfUseAssetsMember2023-06-30 0000914156ufpt:RightOfUseAssetsMember2022-12-31 0000914156ufpt:LeaseLiabilitiesCurrentMember2023-06-30 0000914156ufpt:LeaseLiabilitiesCurrentMember2022-12-31 0000914156ufpt:LeaseLiabilitiesNoncurrentMember2023-06-30 0000914156ufpt:LeaseLiabilitiesNoncurrentMember2022-12-31 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:GeographicDistributionForeignMember2023-04-012023-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:GeographicDistributionForeignMember2023-01-012023-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:GeographicDistributionForeignMember2022-04-012022-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:GeographicDistributionForeignMember2022-01-012022-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-04-012023-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberufpt:OneCustomerMember2023-04-012023-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberufpt:OneCustomerMember2023-01-012023-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberufpt:OneCustomerMember2022-04-012022-06-30 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMemberufpt:OneCustomerMember2022-01-012022-06-30 0000914156us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2023-01-012023-06-30 0000914156us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMemberufpt:TwoCustomersMember2023-01-012023-06-30 0000914156us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMember2022-01-012022-12-31 0000914156us-gaap:SalesRevenueNetMemberus-gaap:CustomerConcentrationRiskMember2022-04-012022-06-30 0000914156us-gaap:AccountsReceivableMemberus-gaap:CustomerConcentrationRiskMemberufpt:OneCustomerMember2022-01-012022-12-31 0000914156ufpt:LonglivedAssetsMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:GeographicDistributionForeignMember2023-01-012023-06-30 0000914156ufpt:LonglivedAssetsMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:GeographicDistributionForeignMember2022-01-012022-12-31 0000914156ufpt:MedicalMember2023-04-012023-06-30 0000914156ufpt:MedicalMember2022-04-012022-06-30 0000914156ufpt:MedicalMember2023-01-012023-06-30 0000914156ufpt:MedicalMember2022-01-012022-06-30 0000914156ufpt:AerospaceDefenseMember2023-04-012023-06-30 0000914156ufpt:AerospaceDefenseMember2022-04-012022-06-30 0000914156ufpt:AerospaceDefenseMember2023-01-012023-06-30 0000914156ufpt:AerospaceDefenseMember2022-01-012022-06-30 0000914156ufpt:AutomotiveMember2023-04-012023-06-30 0000914156ufpt:AutomotiveMember2022-04-012022-06-30 0000914156ufpt:AutomotiveMember2023-01-012023-06-30 0000914156ufpt:AutomotiveMember2022-01-012022-06-30 0000914156ufpt:IndustrialOrOtherMember2023-04-012023-06-30 0000914156ufpt:IndustrialOrOtherMember2022-04-012022-06-30 0000914156ufpt:IndustrialOrOtherMember2023-01-012023-06-30 0000914156ufpt:IndustrialOrOtherMember2022-01-012022-06-30 0000914156ufpt:IntellectualPropertyTradenameAndBrandMembersrt:WeightedAverageMember2023-06-30 0000914156us-gaap:NoncompeteAgreementsMembersrt:WeightedAverageMember2023-06-30 0000914156us-gaap:CustomerListsMembersrt:WeightedAverageMember2023-06-30 0000914156ufpt:IntellectualPropertyTradenameAndBrandMember2023-06-30 0000914156us-gaap:NoncompeteAgreementsMember2023-06-30 0000914156us-gaap:CustomerListsMember2023-06-30 0000914156ufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMember2021-12-22 0000914156ufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMemberufpt:SecuredTermLoanMember2021-12-22 0000914156ufpt:SecuredRevolvingCreditFacilityMemberufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMember2021-12-22 0000914156ufpt:SecuredRevolvingCreditFacilityMemberufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMember2021-12-222021-12-22 0000914156ufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMembersrt:MinimumMemberufpt:BloombergShorttermBankYieldIndexRateMember2021-12-222021-12-22 0000914156ufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMembersrt:MaximumMemberufpt:BloombergShorttermBankYieldIndexRateMember2021-12-222021-12-22 0000914156ufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMembersrt:MaximumMemberus-gaap:PrimeRateMember2021-12-222021-12-22 0000914156ufpt:SecondAmendedAndRestatedCreditAgreementMemberufpt:SubsidiaryGuarantorsMember2023-06-30 0000914156us-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2023-06-30 0000914156ufpt:TermLoanMember2023-06-30
 

 

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     JUNE 30, 2023  

 

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: 001-12648

 

UFP Technologies, Inc.

(Exact name of registrant as specified in its charter)

 

Delaware

04-2314970

(State or other jurisdiction of incorporation or organization)

(I.R.S. Employer Identification No.)

 

100 Hale Street, Newburyport, MA 01950, USA

(Address of principal executive offices) (Zip Code)

 

(978) 352-2200

(Registrant's telephone number, including area code)

 

_________________________________________

(Former name, former address, and former fiscal year, if changed since last report)

 

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

 

Title of each class

Trading Symbol(s)

Name of each exchange
on which registered

Common Stock

UFPT

The NASDAQ Stock Market L.L.C.

 

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, 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 ☒

 

7,638,812 shares of registrant’s Common Stock, $0.01 par value, were outstanding as of August 1, 2023.

 

 

 

 

 

UFP Technologies, Inc.

 

Index

 

    Page
     

PART I - FINANCIAL INFORMATION

3
     
 

Item 1.

Financial Statements

3

       
 

Condensed Consolidated Balance Sheets as of June 30, 2023 and December 31, 2022 (unaudited)

3

     
 

Condensed Consolidated Statements of Comprehensive Income for the Three and Six Months Ended June 30, 2023 and June 30, 2022 (unaudited)

4

     
  Condensed Consolidated Statements of Stockholders’ Equity for the Three and Six Months Ended June 30, 2023 and June 30, 2022 (unaudited)

5

     
  Condensed Consolidated Statements of Cash Flows for the Six Months Ended June 30, 2023 and June 30, 2022 (unaudited)

6

     
 

Notes to Interim Condensed Consolidated Financial Statements

7

     
 

Item 2.

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

20

       
 

Item 3.

Quantitative and Qualitative Disclosures About Market Risk

25

       
 

Item 4.

Controls and Procedures

25

       

PART II - OTHER INFORMATION

25
     
 

Item 1.

Legal Proceedings

25

       
 

Item 1A.

Risk Factors

26

       
 

Item 2.

Unregistered Sales of Equity Securities and Use of Proceeds

26

       
 

Item 3.

Defaults upon Senior Securities

26

       
 

Item 4.

Mine Safety Disclosures

26

       
 

Item 5.

Other Information

26

       
 

Item 6.

Exhibits

26

     

Signatures

27

 

 

 

 

 
 
 

PART I:          FINANCIAL INFORMATION

ITEM 1:         FINANCIAL STATEMENTS

 

UFP Technologies, Inc.

Condensed Consolidated Balance Sheets

(In thousands, except share data)

(Unaudited)

 

  

June 30,
2023

  

December 31,

2022

 

Assets

        

Current assets:

        

Cash and cash equivalents

 $5,291  $4,451 

Receivables, net

  64,090   55,117 

Inventories

  63,049   53,536 

Prepaid expenses and other current assets

  4,641   3,242 

Total current assets

  137,071   116,346 

Property, plant and equipment, net

  59,839   58,072 

Goodwill

  113,168   113,028 

Intangible assets, net

  66,253   68,361 

Non-qualified deferred compensation plan

  4,945   4,148 

Right of use assets

  13,932   13,153 

Deferred income taxes

  1,926   1,448 

Other assets

  858   3,636 

Total assets

 $397,992  $378,192 
         

Liabilities and Stockholders Equity

        

Current liabilities:

        

Accounts payable

 $25,125  $19,961 

Accrued expenses

  16,772   23,122 

Deferred revenue

  4,266   4,679 

Lease liabilities

  2,614   2,517 

Income taxes payable

  216   1,682 

Current installments of long-term debt

  4,000   4,000 

Total current liabilities

  52,993   55,961 

Long-term debt, excluding current installments

  53,000   51,000 

Deferred income taxes

  458   448 

Non-qualified deferred compensation plan

  5,003   4,167 

Lease liabilities

  11,667   10,851 

Other liabilities

  14,586   18,220 

Total liabilities

  137,707   140,647 

Commitments and contingencies

          

Stockholders’ equity:

        

Preferred stock, $.01 par value, 1,000,000 shares authorized; no shares issued

  -   - 

Common stock, $.01 par value, 20,000,000 shares authorized; 7,668,371 and 7,638,812 shares issued and outstanding, respectively, at June 30, 2023; 7,611,244 and 7,581,685 shares issued and outstanding, respectively, at December 31, 2022

  76   76 

Additional paid-in capital

  36,654   36,070 

Retained earnings

  224,218   202,596 

Accumulated other comprehensive loss

  (76)  (610)

Treasury stock at cost: 29,559 shares at June 30, 2023 and December 31, 2022

  (587)  (587)

Total stockholders’ equity

  260,285   237,545 

Total liabilities and stockholders' equity

 $397,992  $378,192 

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

3

 

 

 

UFP Technologies, Inc.

Condensed Consolidated Statements of Comprehensive Income

(In thousands, except per share data)

(Unaudited)

 

 

   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 
   

2023

   

2022

   

2023

   

2022

 

Net sales

  $ 100,037     $ 94,343     $ 197,790     $ 165,585  

Cost of sales

    70,392       70,019       139,444       124,128  

Gross profit

    29,645       24,324       58,346       41,457  

Selling, general & administrative expenses

    12,299       12,078       25,306       22,088  

Acquisition costs

    -       242       -       1,017  

Change in fair value of contingent consideration

    198       6,002       3,051       6,002  

Loss (gain) on sale of property, plant & equipment

    106       (6,197 )     107       (6,209 )

Operating income

    17,042       12,199       29,882       18,559  

Interest expense, net

    1,089       733       1,958       1,060  

Other (income) expenses

    (20 )     (157 )     56       (209 )

Income before income tax expense

    15,973       11,623       27,868       17,708  

Income tax expense

    4,090       2,694       6,246       3,921  

Net income

  $ 11,883     $ 8,929     $ 21,622     $ 13,787  
                                 

Net income per share:

                               

Basic

  $ 1.56     $ 1.18     $ 2.84     $ 1.83  

Diluted

  $ 1.55     $ 1.17     $ 2.81     $ 1.81  

Weighted average common shares outstanding:

                               

Basic

    7,625       7,563       7,608       7,554  

Diluted

    7,690       7,608       7,689       7,618  
                                 
                                 

Comprehensive Income

                               

Net Income

  $ 11,883     $ 8,929     $ 21,622     $ 13,787  

Other comprehensive income:

                               

Foreign currency translation adjustment

    41       (1,516 )     534       (1,135 )

Other comprehensive loss

    41       (1,516 )     534       (1,135 )

Comprehensive income

  $ 11,924     $ 7,413     $ 22,156     $ 12,652  

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

4

 

 

 

UFP TECHNOLOGIES, INC.

Condensed Consolidated Statements of Stockholders Equity

(In thousands)

(Unaudited)

 

Three and Six Months Ended June 30, 2023

 
                   

Additional

           

Accumulated

                   

Total

 
   

Common Stock

   

Paid-in

   

Retained

   

Other Comprehensive

   

Treasury Stock

   

Stockholders'

 
   

Shares

   

Amount

   

Capital

   

Earnings

   

Income (Loss)

   

Shares

   

Amount

   

Equity

 

Balance at December 31, 2022

    7,582     $ 76     $ 36,070     $ 202,596     $ (610 )     30     $ (587 )   $ 237,545  

Share-based compensation

    49       -       1,056       -       -       -       -       1,056  

Exercise of stock options net of shares presented for exercise

    3       -       -       -       -       -       -       -  

Net share settlement of RSUs

    (21 )     -       (2,413 )     -       -       -       -       (2,413 )

Issuance of common stock

    -       -       64       -       -       -       -       64  

Other comprehensive income

    -       -       -       -       493       -       -       493  

Net income

    -       -       -       9,739       -       -       -       9,739  

Balance at March 31, 2023

    7,613     $ 76     $ 34,777     $ 212,335     $ (117 )     30     $ (587 )   $ 246,484  

Share-based compensation

    4       -       1,197       -       -       -       -       1,197  

Exercise of stock options

    22       -       680       -       -       -       -       680  

Other comprehensive income

    -       -       -       -       41       -       -       41  

Net income

    -       -       -       11,883       -       -       -       11,883  

Balance at June 30, 2023

    7,639     $ 76     $ 36,654     $ 224,218     $ (76 )     30     $ (587 )   $ 260,285  

 

 

 

Three and Six Months Ended June 30, 2022

 
                   

Additional

           

Accumulated

                   

Total

 
   

Common Stock

   

Paid-in

   

Retained

   

Other Comprehensive

   

Treasury Stock

   

Stockholders'

 
   

Shares

   

Amount

   

Capital

   

Earnings

   

Income (Loss)

   

Shares

   

Amount

   

Equity

 

Balance at December 31, 2021

    7,535     $ 75     $ 34,151     $ 160,807     $ -       30     $ (587 )   $ 194,446  

Share-based compensation

    46       1       691       -       -       -       -       692  

Net share settlement of RSUs

    (20 )     -       (1,299 )     -       -       -       -       (1,299 )

Other comprehensive income

    -       -       -       -       381       -       -       381  

Net income

    -       -       -       4,858       -       -       -       4,858  

Balance at March 31, 2022

    7,561     $ 76     $ 33,543     $ 165,665     $ 381       30     $ (587 )   $ 199,078  

Share-based compensation

    4       -       781       -       -       -       -       781  

Exercise of stock options

    1       -       21       -       -       -       -       21  

Net share settlement of RSUs

    -       -       (3 )     -       -       -       -       (3 )

Other comprehensive loss

    -       -       -       -       (1,516 )     -       -       (1,516 )

Net income

    -       -       -       8,929       -       -       -       8,929  

Balance at June 30, 2022

    7,566     $ 76     $ 34,342     $ 174,594     $ (1,135 )     30     $ (587 )   $ 207,290  

 

The accompanying notes are an integral part of these consolidated financial statements.

 

5

 

 

 

UFP Technologies, Inc.

Condensed Consolidated Statements of Cash Flows

(In thousands)

(Unaudited)

 

   

Six Months Ended

 
   

June 30,

 
   

2023

   

2022

 

Cash flows from operating activities:

               

Net income

  $ 21,622     $ 13,787  

Adjustments to reconcile net income to net cash provided by

operating activities:

               

Depreciation and amortization

    5,607       6,333  

Loss (gain) on disposal of property, plant & equipment

    107       (6,209 )

Share-based compensation

    2,253       1,473  

Deferred income taxes

    (466 )     (383 )

Change in fair value of contingent consideration

    3,051       6,002  

Changes in operating assets and liabilities:

               

Receivables, net

    (8,807 )     (16,363 )

Inventories

    (9,448 )     (15,212 )

Prepaid expenses and other current assets

    (1,395 )     (1,320 )

Income taxes payable

    (1,470 )     (1,103 )

Other assets

    1,202       (3,004 )

Accounts payable

    4,862       11,832  

Accrued expenses

    (6,197 )     4,597  

Deferred revenue

    (415 )     1,365  

Non-qualified deferred compensation plan and other liabilities

    94       (1,830 )

Net cash provided by (used in) operating activities

    10,600       (35 )

Cash flows from investing activities:

               

Additions to property, plant, and equipment

    (4,951 )     (8,502 )

Acquisition of Advant, net of cash acquired

    -       (20,768 )

Acquisition of DAS Medical, working capital adjustment

    -       115  

Proceeds from sale of fixed assets

    4       12  

Net cash used in investing activities

    (4,947 )     (29,143 )

Cash flows from financing activities:

               

Proceeds from advances on revolving line of credit

    9,000       34,000  

Payments on revolving line of credit

    (5,000 )     (7,000 )

Principal payments of long-term debt

    (2,000 )     (2,000 )

Payment of contingent consideration

    (5,000 )     -  

Principal payments on finance lease obligations

    (32 )     (32 )

Proceeds from exercise of stock options

    680       21  

Payment of statutory withholdings for restricted stock units vested

    (2,413 )     (1,302 )

Net cash (used in) provided by financing activities

    (4,765 )     23,687  

Effect of foreign currency exchange rates on cash and cash equivalents

    (48 )     (50 )

Net increase (decrease) in cash and cash equivalents

    840       (5,541 )

Cash and cash equivalents at beginning of period

    4,451       11,117  

Cash and cash equivalents at end of period

  $ 5,291     $ 5,576  

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

6

 

 

Notes to Interim Condensed Consolidated Financial Statements

 

 

(1)

Basis of Presentation

 

The interim condensed consolidated financial statements of UFP Technologies, Inc. (the “Company”) presented herein, have been prepared pursuant to the rules of the Securities and Exchange Commission for quarterly reports on Form 10-Q and do not include all the information and note disclosures required by accounting principles generally accepted in the United States of America. These statements should be read in conjunction with the consolidated financial statements and notes thereto for the year ended December 31, 2022, included in the Company's 2022 Annual Report on Form 10-K, as filed with the Securities and Exchange Commission.

 

The condensed consolidated balance sheets as of June 30, 2023 and December 31, 2022, the condensed consolidated statements of comprehensive income for the three and six months ended June 30, 2023 and 2022, the condensed consolidated statements of stockholders’ equity for the three and six months ended June 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the six months ended June 30, 2023 and 2022 are unaudited but, in the opinion of management, include all adjustments (consisting of normal, recurring adjustments) necessary for a fair presentation of results for these interim periods. The condensed consolidated balance sheet as of December 31, 2022 has been derived from the Company’s annual financial statements that were audited by an independent registered public accounting firm but does not include all of the information and footnotes required for complete annual financial statements.

 

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management 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 revenues and expenses during the reporting period.

 

The results of operations for the three- and six-month periods ended June 30, 2023 are not necessarily indicative of the results to be expected for the entire fiscal year ending December 31, 2023.

 

Recent Accounting Pronouncements

 

There are no newly issued accounting pronouncements that the Company expects to have a material effect on the financial statements.

 

 

 

(2)

Acquisition and Divestiture

 

Molded Fiber

 

On  July 26, 2022, pursuant to a share purchase agreement and related agreements, the Company sold its former wholly owned subsidiary Moulded Fibre Technology, Inc. (“MFT”) and related real estate in Iowa to CKF USA INCORPORATED (“CKF”) (a Delaware Corporation) for approximately $31.5 million (including a working capital adjustment of approximately $0.1 million that decreased the total consideration). The net book value of the assets sold was approximately $15.4 million and the Company recorded a net gain on sale of approximately $15.7 million, which was recorded in the year ended  December 31, 2022. $2.6 million of the purchase price is being held in escrow to indemnify CKF against certain claims, losses, and liabilities. The Securities Purchase Agreement contains customary representations, warranties, and covenants customary for transactions of this type. Proceeds from the sale were used to pay down debt on the Company’s revolving credit facility, as well as income tax obligations on the related gain.

 

Advant Medical

 

On March 16, 2022, the Company purchased 100% of the outstanding shares of common stock of Advant Medical, Ltd., Advant Medical Inc. and Advant Medical Costa Rica, Limitada, (together Advant), pursuant to a Stock Purchase Agreement and related agreements, for an aggregate purchase price of €19.0 million in cash along with a working capital adjustment at closing. Total consideration in U.S. Dollars amounted to approximately $21.2 million. The purchase price was subject to additional adjustment based upon Advant’s final working capital at closing. A portion of the purchase price is being held in escrow to indemnify the Company against certain claims, losses, and liabilities. The Stock Purchase Agreement contains customary representations, warranties, and covenants customary for transactions of this type.

 

7

 

Founded in 1993, Advant is headquartered in Galway, Ireland, with operations in Costa Rica and partner manufacturing in Mexico. Advant is a developer and manufacturer of Class I, II, and III medical devices and packaging, primarily for catheters and guide wires.

 

The following table summarizes the allocation of consideration paid to the acquisition date fair value of the assets acquired and liabilities assumed based on management’s estimates of fair value (in thousands):

 

Fair value of considerations transferred

       

Cash paid at closing

  $ 23,608  

Other liability

    395  

Cash from Advant

    (2,840 )

Total consideration

  $ 21,163  
         

Purchase price allocation

       

Accounts receivable

  $ 2,299  

Inventory

    2,410  

Other current assets

    213  

Property, plant, and equipment

    5,704  

Customer contracts & relationships

    2,925  

Intellectual property

    2,127  

Non-compete agreement

    259  

Lease right of use assets

    289  

Other assets

    41  

Goodwill

    7,140  

Total identifiable assets

  $ 23,407  

Accounts payable

    (772 )

Accrued expenses

    (668 )

Income taxes

    (66 )

Deferred taxes

    (449 )

Lease liabilities

    (289 )

Net assets acquired

  $ 21,163  

 

Acquisition costs associated with the transaction through the second quarter of 2022 were approximately $779 thousand, of which $749 thousand was charged to expense in the six-months ended June 30, 2022 and $30 thousand was charged to expense in the year ended December 31, 2021. These costs were primarily for legal, investment banking and valuation services, as well as stamp duty filings and are reflected on the face of the income statement.

 

The amount of revenue and earnings of Advant recognized since the acquisition date through the second quarter of 2022 was approximately $6.8 million and $0.7 million, respectively, and is included in the condensed consolidated statement of comprehensive income for the period ended June 30, 2022.

 

Pro-forma statements

 

The following table contains an unaudited pro forma condensed consolidated statement of operations for the six-month period ended June 30, 2022, as if the Advant acquisition had occurred at the beginning of 2022 (in thousands):

 

8

 
   

Six-month Period Ended

 
   

June 30, 2022

 
   

(Unaudited)

 

Sales

  $ 169,812  

Operating income

  $ 19,302  

Net income

  $ 14,341  

Earnings per share:

       

Basic

  $ 1.90  

Diluted

  $ 1.88  

 

The above unaudited pro forma information is presented for illustrative purposes only and may not be indicative of the results of operations that would have occurred had the acquisition occurred as presented. In addition, future results may vary significantly from the results reflected in such pro forma information.

 

 

 

(3)

Revenue Recognition

 

The Company recognizes revenue when a customer obtains control of a promised good or service. The amount of revenue recognized reflects the consideration that the Company expects to be entitled to in exchange for promised goods or services. The Company recognizes revenue in accordance with the core principles of ASC 606 which include (1) identifying the contract with a customer, (2) identifying separate performance obligations within the contract, (3) determining the transaction price, (4) allocating the transaction price to the performance obligations, and (5) recognizing revenue. The Company recognizes all but an immaterial portion of its product sales upon shipment. The Company recognizes revenue from the sale of tooling and machinery primarily upon customer acceptance. The Company recognizes revenue from engineering services, which are primarily product development services, as the services are performed or as otherwise determined based on the substance of the agreement. The Company recognizes revenue from bill and hold transactions at the time the specified goods are complete and available to the customer. In the ordinary course of business, the Company accepts sales returns from customers for defective goods, such amounts being immaterial. Although only applicable to an insignificant number of transactions, the Company has elected to exclude sales taxes from the transaction price. The Company has elected to account for shipping and handling activities for which the Company is responsible under the terms and conditions of the sale not as performance obligations but rather as fulfillment costs. These activities are required to fulfill the Company’s promise to transfer the good and are expensed when revenue is recognized.

 

Disaggregated Revenue

 

The following table presents the Company’s revenue disaggregated by the major types of goods and services sold to the Company’s customers (in thousands):

 

   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 

Net sales of:

 

2023

   

2022

   

2023

   

2022

 

Products

  $ 98,660     $ 89,672     $ 193,352     $ 159,137  

Tooling and Machinery

    259       2,846       1,553       3,324  

Engineering services

    1,118       1,825       2,885       3,124  

Total net sales

  $ 100,037     $ 94,343     $ 197,790     $ 165,585  

 

Contract balances

 

Timing of revenue recognition may differ from the timing of invoicing to customers. When invoicing occurs prior to revenue recognition, the Company has contract liabilities included within “deferred revenue” on the condensed consolidated balance sheets.

 

9

 

The following table presents a roll-forward of contract liabilities activity for the six-month periods ended June 30, 2023 and 2022 (in thousands):

 

   

Contract Liabilities

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Deferred revenue - beginning of period

  $ 4,679     $ 4,247  

Increases due to consideration received from customers

    2,151       3,378  

Revenue recognized

    (2,564 )     (2,013 )

Deferred revenue - end of period

  $ 4,266     $ 5,612

 

 

Revenue recognized during the three-and-six-month periods ended June 30, 2023 from amounts included in deferred revenue at the beginning of the period were approximately $0.1 million and $2.0 million, respectively.

 

Revenue recognized during the three-and-six-month periods ended June 30, 2022 from amounts included in deferred revenue at the beginning of the period were approximately $1.5 million and $1.8 million, respectively.

 

When invoicing occurs after revenue recognition, the Company has contract assets, included within “receivables” on the condensed consolidated balance sheet.

 

The following table presents a roll-forward of contract assets activity for the six-month periods ended June 30, 2023 and 2022 (in thousands):

 

   

Contract Assets

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Unbilled receivables - beginning of period

  $ 270     $ 74  

Increases due to revenue recognized, not invoiced to customers

    2,070       1,937  

Decreases due to customer invoicing

    (2,047 )     (1,784 )

Unbilled receivables - end of period

  $ 293     $ 227  

 

 

 

(4)

Supplemental Cash Flow Information

 

Supplemental cash flow information consists of the following (in thousands):

 

   

June 30,

 
   

2023

   

2022

 

Cash paid for:

               

Interest

  $ 1,912     $ 1,038  

Income taxes, net of refunds

    8,112       5,033  
                 

Non-cash investing and financing activities:

               

Capital additions accrued but not yet paid

  $ 218     $ 208  

Operating lease right of use asset

    1,524       289  

Operating lease liabilities

    (1,560 )     (289 )

 

 

 

(5)

Receivables and Allowance for Credit Losses

 

Receivables consist of the following (in thousands):

 

10

 
   

June 30,

   

December 31,

 
   

2023

   

2022

 

Accounts receivable–trade

  $ 64,808     $ 55,850  

Less allowance for credit losses

    (718 )     (733 )

Receivables, net

  $ 64,090     $ 55,117  

 

The Company is exposed to credit losses primarily through sales of products and services. The Company’s expected loss allowance methodology for accounts receivable is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' trade accounts receivables. Due to the short-term nature of such receivables, the estimate of the amount of accounts receivable that may not be collected is based on the aging of the accounts receivable balances and the financial condition of customers. Additionally, specific allowance amounts are established to record the appropriate provision for customers that have a higher probability of default. The Company’s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions. Balances are written off when determined to be uncollectible. Estimates based on an assessment of anticipated payment and all other historical, current, and future information that is reasonably available are used to determine the allowance.

 

The following table provides a roll-forward of the allowance for credit losses that is deducted from accounts receivable to present the net amount expected to be collected as of June 30, 2023 and 2022 (in thousands):

 

   

Allowance for Credit
Losses

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Allowance - beginning of period

  $ 733     $ 519  

Provision (Adjustment) for expected credit losses

    (13 )     159  

Amounts written off against the allowance

    (10 )     (14 )

Recoveries

    8       -  

Allowance - end of period

  $ 718     $ 664  

 

 

 

(6)

Fair Value of Financial Instruments

 

Financial instruments recorded at fair value in the consolidated balance sheets, or disclosed at fair value in the footnotes, are categorized based upon the level of judgment associated with the inputs used to measure their fair value. Hierarchical levels defined by ASC 820, Fair Value Measurements and Disclosures, and directly related to the amount of subjectivity associated with inputs to fair valuation of these assets and liabilities, are as follows:

 

Level 1

Valued based on unadjusted, quoted prices in active markets for identical assets or liabilities at the measurement date. An active market for the asset or liability is a market in which transactions for the asset or liability occur with sufficient frequency and volume to provide pricing information on an ongoing basis.

 

Level 2

Valued based on either directly or indirectly observable prices for the asset or liability through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life.

 

Level 3

Valued based on management’s best estimate of what market participants would use in pricing the asset or liability at the measurement date. Consideration is given to the risk inherent in the valuation technique and the risk inherent in the inputs to the model.

 

The following table presents the fair value and hierarchy levels, for financial assets that are measured at fair value on a recurring basis (in thousands):

 

11

 
  

June 30, 2023

  

December 31, 2022

 

Level 3

        

Purchase price contingent consideration:

        

Accrued contingent consideration (earn-out)

 $12,619  $14,568 

Present value of non-competition payments

  8,429   10,043 

 

In connection with the acquisition of DAS Medical in 2021, the Company is required to make contingent payments, subject to the entities achieving certain financial performance thresholds. The contingent consideration payments for the DAS Medical acquisition are up to $20 million. The Company paid $5 million during the second quarter of 2023. The fair value of the liability for the contingent consideration payments recognized upon the acquisition as part of the purchase accounting opening balance sheets totaled approximately $9.7 million and was estimated by discounting to present value the probability-weighted contingent payments expected to be made. Assumptions used in this calculation were managements financial forecasts, discount rate and various volatility factors. The ultimate settlement of contingent consideration could deviate from current estimates based on the actual results of these financial measures. This liability is considered to be a Level 3 financial liability that is re-measured each reporting period. The fair value of the liability for the contingent consideration payments recognized at June 30, 2023 totaled approximately $12.6 million.

 

Also in connection with the DAS Medical and Advant Medical acquisitions, the Company has entered into Non-Competition Agreements with the beneficiaries and the Company has agreed to pay additional consideration to the parties to the Non-Competition Agreements, including an aggregate of $10.0 million in payments over the ten years following the closing of the DAS Medical acquisition for the 10-year noncompetition covenants of certain key owners. The present value of the Non-Competition Agreements totaled approximately $8.4 million. This liability is considered to be a Level 3 financial liability that is re-measured each reporting period. The change in fair value of contingent consideration for the acquisition is included in change in fair value of contingent consideration in the condensed consolidated statements of comprehensive income.

 

The Company has financial instruments, such as accounts receivable, accounts payable, and accrued expenses, that are stated at carrying amounts that approximate fair value because of the short maturity of those instruments. The carrying amount of the Company’s long-term debt approximates fair value as the interest rate on the debt approximates the estimated borrowing rate currently available to the Company.

 

 

 

(7)

Share-Based Compensation

 

Share-based compensation is measured at the grant date based on the fair value of the award and is recognized as an expense over the requisite service period (generally the vesting period of the equity grant).

 

The Company issues share-based awards through several plans that are described in detail in the notes to the consolidated financial statements for the year ended December 31, 2022. The compensation cost charged against income for those plans is included in selling, general & administrative expenses as follows (in thousands):

 

   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 

Share-based compensation related to:

 

2023

   

2022

   

2023

   

2022

 

Common stock grants

  $ 100     $ 100     $ 200     $ 200  

Stock option grants

    113       60       207       113  

Restricted Stock Unit Awards ("RSUs")

    984       621       1,846       1,160  

Total share-based compensation

  $ 1,197     $ 781     $ 2,253     $ 1,473  

 

The total income tax benefit recognized in the condensed consolidated statements of comprehensive income for share-based compensation arrangements was approximately $752 thousand and $236 thousand for the three-month periods ended June 30, 2023 and 2022, respectively, and approximately $1.6 million and $617 thousand for the six-month periods ended June 30, 2023 and 2022, respectively.

 

12

 

Common stock grants

 

The compensation expense for common stock grants during the six-month period ended June 30, 2023, was determined based on an approved fixed dollar amount with the number of shares to be determined on the date of issuance.

 

Stock Option grants

 

The following is a summary of stock option activity under all plans for the six-month period ended June 30, 2023:

 

   

Shares Under

Options

   

Weighted Average

Exercise Price

(per share)

   

Weighted Average Remaining Contractual Life

(in years)

   

Aggregate Intrinsic Value

(in thousands)

 

Outstanding at December 31, 2022

    92,075     $ 39.98                  

Granted

    12,153       131.13                  

Exercised

    (25,740 )     30.67                  

Outstanding at June 30, 2023

    78,488     $ 57.14       6.06     $ 10,730  

Exercisable at June 30, 2023

    66,335     $ 43.59       5.98     $ 9,967  

Vested and expected to vest at June 30, 2023

    78,488     $ 57.14     $ 6.06     $ 10,730  

 

On June 7, 2023, the Company granted options to its directors for the purchase of 4,215 shares of the Company’s common stock at that day’s closing price of $167.98. On February 14, 2023, the Company granted options to its President and Chief Executive Officer for the purchase of 7,935 shares of common stock at that day’s closing price of $111.54. The compensation expense related to these grants was determined as the fair value of the options using the Black-Scholes option pricing model based on the following assumptions:

 

Expected volatility

36.6% / 40.6%

Expected dividends

None

Risk-free interest rate

3.6% / 3.9%

Exercise price

$111.54 / $167.98

Expected term (years)

6.2 / 6.8

Weighted-average grant date fair value

$37.81 / $71.17

 

The stock volatility for each grant is determined based on a review of the experience of the weighted average of historical daily price changes of the Company’s common stock over the expected option term, and the risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for periods correspond‐ing with the expected term of the option. The expected term is estimated based on historical option exercise activity.

 

During the six-month period ended June 30, 2023 and 2022, the total intrinsic value of all options exercised was approximately $3.0 million and $72 thousand, respectively, and the total amount of consideration received by the Company from the exercised options was approximately $789 thousand and $21 thousand, respectively. At its discretion, the Company allows option holders to surrender previously owned common stock in lieu of paying the exercise price and withholding taxes. During the six-month period ended June 30, 2023, 861 shares were surrendered at an average market price of $127.05. Zero shares were surrendered during the same period in 2022.

 

RSUs

 

The following table summarizes information about RSU activity during the six-month period ended June 30, 2023:

 

13

 
   

Restricted

Stock Units

   

Weighted Average
Grant Date
Fair Value

 

Outstanding at December 31, 2022

    102,048     $ 56.02  

Awarded

    46,050       113.91  

Shares vested

    (52,126 )     55.17  

Shares forfeited

    (99 )     97.61  

Outstanding at June 30, 2023

    95,873     $ 53.59  

 

At the Company’s discretion, upon vesting, RSU holders are given the option to net-share settle to cover the required minimum withholding tax, and the remaining amount is converted into the equivalent number of common shares and issued to the RSU holder. During the six-month period ended June 30, 2023 and 2022, 20,457 and 19,425 shares were surrendered at an average market price of $117.95 and $67.05, respectively.

 

As of June 30, 2023, the Company had approximately $7.5 million of unrecognized compensation expense that is expected to be recognized over a period of 2.75 years.

 

 

 

(8)

Inventories

 

Inventories are stated at the lower of cost (determined using the first-in, first-out method) or net realizable value, and consist of the following at the stated dates (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Raw materials

  $ 44,018     $ 42,475  

Work in process

    7,453       4,183  

Finished goods

    11,578       6,878  

Total inventory

  $ 63,049     $ 53,536  

 

 

 

(9)

Property, Plant and Equipment

 

Property, plant, and equipment consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Land and improvements

  $ 4,834     $ 4,811  

Buildings and improvements

    34,528       34,446  

Leasehold improvements

    7,920       5,503  

Machinery & equipment

    53,533       52,233  

Furniture, fixtures, computers & software

    6,544       6,401  

Construction in progress

    8,476       7,272  

Property, plant and equipment

  $ 115,835     $ 110,666  

Accumulated depreciation and amortization

    (55,996 )     (52,594 )

Net property, plant and equipment

  $ 59,839     $ 58,072  

 

 

 

(10)

Leases

 

The Company has operating and finance leases for offices, manufacturing plants, vehicles and certain office and manufacturing equipment. Leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for each separate lease component of a contract and its associated non-lease components as a single lease component, thus causing all fixed payments to be capitalized. Variable lease payment amounts that cannot be determined at the commencement of the lease such as increases in lease payments based on changes in index rates or usage, are not included in the right of use (“ROU”) assets or lease liabilities. These are expensed as incurred and recorded as variable lease expense. The Company determines if an arrangement is a lease at the inception of a contract. Operating and finance lease ROU assets and operating and finance lease liabilities are stated separately in the condensed consolidated balance sheet. 

 

14

 

ROU assets represent the Company's right to use an underlying asset during the lease term and lease liabilities represent the Company's obligation to make lease payments pursuant to the lease.  ROU assets and lease liabilities are recognized at commencement date based on the net present value of fixed lease payments over the lease term.  The Company's assumed lease term includes options to extend or terminate the lease when it is reasonably certain that it will exercise that option.  ROU assets are also adjusted for any deferred or accrued rent. As the Company's leases do not typically provide an implicit rate, the Company uses its incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments.

 

ROU assets and lease liabilities consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Operating lease ROU assets

  $ 13,751     $ 12,942  

Finance lease ROU assets

    181       211  

Total ROU assets

  $ 13,932     $ 13,153  

Operating lease liabilities, current

  $ 2,554     $ 2,458  

Finance lease liabilities, current

    60       59  

Total lease liabilities, current

  $ 2,614     $ 2,517  

Operating lease liabilities, long-term

  $ 11,541     $ 10,695  

Finance lease liabilities, long-term

    126       156  

Total lease liabilities, long-term

  $ 11,667     $ 10,851  

 

 

   

Six Months Ended

 
   

June 30,

 
   

($ in thousands)

 
   

2023

   

2022

 

Lease Cost:

               

Finance lease cost:

               

Amortization of right of use assets

  $ 30     $ 30  

Interest on lease liabilities

    2       3  

Operating lease cost

    1,480       1,301  

Variable lease cost

    159       156  

Short-term lease cost

    14       43  

Total lease cost

  $ 1,685     $ 1,533  

 

15

 
   

Six Months Ended

 
   

June 30,

 
   

($ in thousands)

 
   

2023

   

2022

 

Cash paid for amounts included in measurement of lease liabilities:

               

Operating cash flows from operating leases

  $ 1,407     $ 1,183  

Financing cash flows from finance leases

    32       32  
                 

Weighted-average remaining lease term (years):

               

Finance

    3.04       4.04  

Operating

    4.81       4.06  

Weighted-average discount rate:

               

Finance

    2.10 %     2.10 %

Operating

    3.43 %     2.76 %

 

The aggregate future lease payments for leases as of June 30, 2023 are as follows (in thousands):

 

   

Finance

   

Operating

 

Remainder of 2023

  $ 32     $ 1,473  

2024

    63       2,962  

2025

    63       2,797  

2026

    29       2,429  

2027

    6       2,064  

Thereafter

    -       3,773  

Total lease payments

    193       15,498  

Less: Interest

    (7 )     (1,403 )

Present value of lease liabilities

  $ 186     $ 14,095  

 

 

 

(11)

Income Per Share

 

Basic income per share is based on the weighted average number of shares of common stock outstanding. Diluted income per share is based upon the weighted average number of common shares outstanding and dilutive common stock equivalent shares outstanding during each period.

 

The weighted average number of shares used to compute basic and diluted net income per share consisted of the following (in thousands):

 

  

Three Months Ended

  

Six Months Ended

 
  

June 30,

  

June 30,

 
  

2023

  

2022

  

2023

  

2022

 

Basic weighted average common shares outstanding

  7,625   7,563   7,608   7,554 

Weighted average common equivalent shares due to restricted stock, stock options and RSUs

  65   45   81   64 

Diluted weighted average common shares outstanding

  7,690   7,608   7,689   7,618 

 

The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options, when the average market price of the common stock is lower than the exercise price of the related stock options during the period. These outstanding stock options are not included in the computation of diluted income per share because the effect would be antidilutive. For the three- and six-month period ended June 30, 2023, the number of stock options excluded from the computation of diluted earnings per share for this reason was 4,218 and 12,153, respectively. For both the three- and six-month period ended June 30, 2022, the number of stock options excluded from the computation of diluted earnings per share for this reason was 9,876.

 

16

 
 

(12)

Segment Reporting

 

The Company consists of a single operating and reportable segment.

 

Revenues shipped to customers outside of the United States comprised approximately 18.5 % and 17.6 % for the three- and six-month periods ended June 30, 2023, respectively. Revenues shipped to customers outside of the United States comprised approximately 16.9% and 14.8% for the three- and six-month periods ended June 30, 2022, respectively.

 

One customer comprised 24.7% and 22.7% of the Company’s consolidated revenues for the three- and six-month periods ended June 30, 2023, respectively. One customer comprised 20.2% and 17.8% of the Company’s consolidated revenues for the three-and-six month periods ended June 30, 2022, respectively.

 

At June 30, 2023, two customers represented approximately 23.8% of gross accounts receivable. At December 31, 2022, one customer represented approximately 10% of gross accounts receivable.

 

Approximately 18.6% and 17.0% of all long-lived assets are located outside of the United States at June 30, 2023 and December 31, 2022, respectively.

 

The Company’s products are primarily sold to customers within the Medical, Aerospace & Defense, Automotive, and Industrial/Other markets. Net sales by market for the three- and six-month periods ended June 30, 2023 and 2022 are as follows (in thousands):

 

  

Three Months Ended June 30,

  

Six Months Ended June 30,

 
  

2023

  

2022

  

2023

  

2022

 

Market

 

Net Sales

  

%

  

Net Sales

  

%

  

Net Sales

  

%

  

Net Sales

  

%

 
                                 

Medical

 $86,150   86.1% $74,290   78.7% $169,965   85.9% $126,873   76.6%

Aerospace & Defense

  4,234   4.2%  3,751   4.0%  8,451   4.3%  7,507   4.5%

Automotive

  4,096   4.1%  4,351   4.6%  8,443   4.3%  8,702   5.3%

Industrial / Other

  5,557   5.6%  11,951   12.7%  10,931   5.5%  22,503   13.6%

Net Sales

 $100,037   100.0% $94,343   100.0% $197,790   100.0% $165,585   100.0%

 

 

 

(13)

Goodwill and Other Intangible Assets

 

The change in the carrying amount of goodwill for the six months ended June 30, 2023 was as follows (in thousands):

 

   

Goodwill

 
         

December 31, 2022

  $ 113,028  

Foreign currency translation

    140  

June 30, 2023

  $ 113,168  

 

The carrying values of the Company’s definite lived intangible assets as of June 30, 2023 are as follows (in thousands):

 

17

 
   

Intellectual Property /
Tradename & Brand

   

Non-
Compete

   

Customer
List

   

Total

 

Weighted-average amortization period (years)

 

11.9

   

9.3

   

20

         

Gross amount

  $ 7,106     $ 5,502     $ 65,232     $ 77,840  

Accumulated amortization

    (1,028 )     (1,260 )     (9,299 )     (11,587 )

Net balance

  $ 6,078     $ 4,242     $ 55,933     $ 66,253  

 

Amortization expense related to intangible assets was approximately $1.0 million and $1.1 million, respectively, for the three-month periods ended June 30, 2023 and 2022, and $2.1 million and $2.1 million, respectively, for the six-month periods ended June 30, 2023 and 2022. The estimated remaining amortization expense as of June 30, 2023 is as follows (in thousands):

 

Remainder of 2023

  $ 3,308  

2024

    4,401  

2025

    4,401  

2026

    4,399  

2027

    4,397  

2028

    4,350  

Thereafter

    40,997  

Total

  $ 66,253  

 

 

 

(14)

Other Long-Term Liabilities

 

Other long-term liabilities consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Accrued contingent consideration (earn-out)

  $ 7,619     $ 9,568  

Present value of non-competition payments

    6,467       8,155  

Other

    500       497  
    $ 14,586     $ 18,220  

 

 

 

(15)

Income Taxes

 

The determination of income tax expense in the accompanying unaudited condensed consolidated statements of income is based upon the estimated effective tax rate for the year, adjusted for the impact of any discrete items which are accounted for in the period in which they occur. The Company recorded income tax expense of approximately 25.6% and 23.2% of income before income tax expense for the three-month periods ended June 30, 2023 and 2022, respectively. The Company recorded income tax expense of approximately 22.4% and 22.1% of income before income tax expense for the six-month periods ended June 30, 2023 and 2022, respectively.

 

 

 

(16)

Indebtedness

 

On  December 22, 2021, the Company, as the borrower, entered into a secured $130 million Second Amended and Restated Credit Agreement (the “Second Amended and Restated Credit Agreement”) with certain of the Company’s subsidiaries (the “Subsidiary Guarantors”) and Bank of America, N.A., in its capacity as the initial lender, Administrative Agent, Swingline Lender and L/C Issuer, and certain other lenders from time-to-time party thereto. The Second Amended and Restated Credit Agreement amends and restates the Company’s prior credit agreement, originally dated as of  February 1, 2018.

 

18

 

The credit facilities under the Second Amended and Restated Credit Agreement consist of a $40 million secured term loan to the Company and a secured revolving credit facility, under which the Company  may borrow up to $90 million. The Second Amended and Restated Credit Agreement matures on  December 21, 2026. The secured term loam requires quarterly principal payments of $1,000,000 commencing on  March 31, 2022. The proceeds of the Second Amended and Restated Credit Agreement  may be used for general corporate purposes, including funding certain permitted acquisitions. The Company’s obligations under the Second Amended and Restated Credit Agreement are guaranteed by Subsidiary Guarantors.

 

The Second Amended and Restated Credit Agreement calls for interest determined by the Bloomberg Short-Term Bank Yield Index rate (“BSBY”) plus a margin that ranges from 1.25% to 2.0% or, at the discretion of the Company, the bank’s prime rate less a margin that ranges from .25% to zero. In both cases the applicable margin is dependent upon Company performance. Under the Second Amended and Restated Credit Agreement, the Company is subject to a minimum fixed-charge coverage financial covenant as well as a maximum total funded debt to EBITDA financial covenant. The Second Amended and Restated Credit Agreement contains other covenants customary for transactions of this type, including restrictions on certain payments, permitted indebtedness, and permitted investments.

 

At  June 30, 2023, the Company had approximately $57 million in borrowings outstanding under the Second Amended and Restated Credit Agreement, which were used as partial consideration for the DAS Medical and Advant acquisitions, and also had approximately $0.7 million in standby letters of credit outstanding, drawable as a financial guarantee on worker’s compensation insurance policies. At  June 30, 2023, the applicable interest rate was approximately 6.4% and the Company was in compliance with all covenants under the Second Amended and Restated Credit Agreement.

 

Long-term debt consists of the following (in thousands):

 

   

June 30, 2023

 

Revolving credit facility

  $ 23,000  

Term loan

    34,000  

Total long-term debt

    57,000  

Current portion

    (4,000 )

Long-term debt, excluding current portion

  $ 53,000  

 

Future maturities of long-term debt at June 30, 2023 are as follows (in thousands):

 

   

Term Loan

   

Revolving credit facility

   

Total

 

Remainder of 2023

  $ 2,000     $ -     $ 2,000  

2024

    4,000       -       4,000  

2025

    4,000       -       4,000  

2026

    24,000       23,000       47,000  
    $ 34,000     $ 23,000     $ 57,000  

 

19

 
 

 

 

ITEM 2:         MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS

 

Forward-looking Statements

 

Some of the statements contained in this Report are forward-looking statements within the meaning of Section 27A of the Securities Act of 1933, as amended, and Section 21E of the Securities Exchange Act of 1934, as amended (“Exchange Act”). These statements are subject to known and unknown risks, uncertainties, and other factors, which may cause our or our industry’s actual results, performance, or achievements to be materially different from any future results, performance or achievements expressed or implied by the forward-looking statements. Forward-looking statements include, but are not limited to, statements about the Company’s prospects; statements about the Company’s acquisition strategies and opportunities and the Company’s growth potential and strategies for growth; expectations regarding customer demand; expectations regarding the Company’s liquidity and capital resources, including the sufficiency of its cash reserves and the availability of borrowing capacity to fund operations and/or potential future acquisitions; anticipated revenues and the timing of such revenues; expectations about shifting the Company’s book of business to higher-margin, longer-run opportunities; anticipated trends and potential advantages in the different markets in which the Company competes, including the medical, aerospace and defense, automotive, and industrial/other markets, and the Company’s plans to expand in certain of its markets; statements regarding anticipated advantages the Company expects to realize from its investments and capital expenditures; statements regarding anticipated advantages to improvements and alterations at the Company’s existing plants; expectations regarding the Company’s manufacturing capacity, operating efficiencies, and new production equipment; statements about new product offerings and program launches; statements about the Company’s participation and growth in multiple markets; statements about the Company’s business opportunities; and any indication that the Company may be able to sustain or increase its sales, earnings or earnings per share, or its sales, earnings or earnings per share growth rates.

 

Investors are cautioned that such forward-looking statements involve risks and uncertainties that could adversely affect the Company’s business and prospects, and otherwise cause actual results to differ materially from those anticipated by such forward-looking statements, or otherwise, including without limitation: risks associated with the identification of suitable acquisition candidates and the successful, efficient execution of acquisition transactions, the integration of any such acquisition candidates, the value of those acquisitions to our customers and shareholders, and the financing of such acquisitions; risks related to our indebtedness and compliance with covenants contained in our financing arrangements, and whether any available financing may be sufficient to address our needs; risks associated with efforts to shift the Company’s book of business to higher-margin, longer-run opportunities; risks associated with the Company’s entry into and growth in certain markets; risks and uncertainties associated with seeking and implementing manufacturing efficiencies and implementing new production equipment; risks and uncertainties associated with growth of the Company’s business and increases to sales, earnings and earnings per share; and risks associated with new product and program launches. Accordingly, actual results may differ materially.

 

In some cases, you can identify forward-looking statements by terms such as “may,” “will,” “should,” “could,” “would,” “expects,” “plans,” “anticipates,” “believes,” “estimates,” “projects,” “predicts,” “potential,” and similar expressions intended to identify forward-looking statements. Our actual results could be different from the results described in or anticipated by our forward-looking statements due to the inherent uncertainty of estimates, forecasts, and projections, and may be materially better or worse than anticipated. Given these uncertainties, you should not place undue reliance on these forward-looking statements. Forward-looking statements represent our current beliefs, estimates and assumptions and are only as of the date of this Report. We expressly disclaim any duty to provide updates to forward-looking statements, and the estimates and assumptions associated with them, after the date of this Report, in order to reflect changes in circumstances or expectations, or the occurrence of unanticipated events, except to the extent required by applicable securities laws. All of the forward-looking statements are qualified in their entirety by reference to the factors discussed above and under “Risk Factors” set forth in Part I Item 1A of our Annual Report on Form 10-K for the fiscal year ended December 31, 2022, as well as the risks and uncertainties discussed elsewhere in this Report. We qualify all of our forward-looking statements by these cautionary statements. We caution you that these risks are not exhaustive. We operate in a continually changing business environment and new risks emerge from time to time.

 

Unless the context requires otherwise, the terms “we”, “us”, “our”, or “the Company” refer to UFP Technologies, Inc. and its consolidated subsidiaries.

 

20

 

Overview

 

UFP Technologies is a designer and custom manufacturer of comprehensive solutions for medical devices, sterile packaging, and other highly engineered custom products. UFP is an important link in the medical device supply chain and a valued outsource partner to many of the top medical device manufacturers in the world. The Company’s single-use and single-patient devices and components are used in a wide range of medical devices and packaging for minimally invasive surgery, infection prevention, wound care, wearables, orthopedic soft goods, and orthopedic implants.

 

The Company’s current strategy includes further organic growth and growth through strategic acquisitions.

 

Sales for the Company for the six-month period ended June 30, 2023 increased 19.4% to $197.8 million from $165.6 million in the same period last year, primarily due to an increase in organic sales of approximately 23.9%. Gross profit as a percentage of sales (“gross margin”) for the six-month period ended June 30, 2023 increased to 29.5% from 25.0% in the same period last year, largely due to improved operating efficiencies and price adjustments in response to inflationary increases in input costs. Operating income and net income increased 61.0% and 56.8%, respectively.

 

Results of Operations

 

Sales

 

Sales for the three-month period ended June 30, 2023 increased approximately 6.0% to $100.0 million from sales of $94.3 million for the same period in 2022. The increase in sales is primarily due to increases in sales to customers in the Medical market of 15.9%. Sales to all other markets declined 30.6%, primarily due to the Company’s disposition of its molded fiber business in July, 2022 (see “Note 2. Acquisition and Divestiture” in the notes to our interim condensed consolidated financial statements).

 

Sales for the six-month period ended June 30, 2023 increased approximately 19.4% to $197.8 million from sales of $165.6 million for the same period in 2022. The increase in sales is primarily due to increases in sales to customers in the Medical market of 34.0%. Sales to all other markets declined 28.1%, primarily due to the Company’s disposition of its molded fiber business in July, 2022 (see “Note 2. Acquisition and Divestiture” in the notes to our interim condensed consolidated financial statements).

 

Gross Profit

 

Gross margin increased to 29.6% for the three-month period ended June 30, 2023, from 25.8% for the same period in 2022. As a percentage of sales, material and labor costs collectively decreased 0.4%, while overhead costs decreased 3.4%. The increase in gross margin is primarily due to the leverage of organic sales growth over the fixed portion of overhead, as well as improved operating efficiencies and price adjustments in response to inflationary increases in input costs.

 

Gross margin increased to 29.5% for the six-month period ended June 30, 2023, from 25.0% for the same period in 2022 As a percentage of sales, material and labor costs collectively increased 0.2%, while overhead costs decreased 4.6%. The increase in gross margin is primarily due to the leverage of organic sales growth over the fixed portion of overhead, as well as improved operating efficiencies and price adjustments in response to inflationary increases in input costs.

 

Selling, General and Administrative Expenses

 

Selling, general, and administrative expenses (“SG&A”) increased approximately 1.8% to $12.3 million for the three-month period ended June 30, 2023, from $12.1 million for the same period in 2022, largely due to increased compensation, benefits and payroll tax expenses. As a percentage of sales, SG&A decreased to 12.3% for the three-month period ended June 30, 2023, from 12.8% for the same three-month period in 2022, primarily due to the leverage of organic sales growth over relatively fixed SG&A.

 

SG&A increased approximately 14.6% to $25.3 million for the six-month period ended June 30, 2023, from $22.1 million for the same period in 2022, largely due to increased compensation, benefits and payroll tax expenses and the additional SG&A expenses from the Advant acquisition. As a percentage of sales, SG&A decreased to 12.8% for the three-month period ended June 30, 2023, from 13.3% for the same three-month period in 2022, primarily due to the leverage of organic sales growth over relatively fixed SG&A.

 

21

 

Acquisition Costs

 

The Company incurred approximately $0.2 million and $1.0 million in costs associated with acquisition related activities which were charged to expense for the three and six-months ended June 30, 2022, respectively. These costs were primarily for legal services, valuation services and stamp duty filings and are reflected on the face of the income statement.

 

Change in fair value of contingent consideration

 

In connection with the acquisition of DAS Medical in 2021, the Company is required to make contingent payments, subject to the acquired entities achieving certain financial performance thresholds. The contingent consideration payments for the DAS Medical acquisition are up to $20 million. The Company paid $5 million during the second quarter of 2023. The fair value of the liability for the contingent consideration payments recognized upon the acquisition as part of the purchase accounting opening balance sheets totaled approximately $9.7 million and was estimated by discounting to present value the probability-weighted contingent payments expected to be made. Assumptions used in this calculation were managements financial forecasts, discount rate and various volatility factors. The ultimate settlement of contingent consideration could deviate from current estimates based on the actual results of these financial measures. This liability is considered to be a Level 3 financial liability that is re-measured each reporting period. The fair value of the liability for the contingent consideration payments recognized at June 30, 2023 totaled approximately $12.6 million. The change in fair value of contingent consideration for the three- and six-month periods ended June 30, 2023, resulted in an expense of approximately $0.2 million and $3.1 million, respectively, and was included in change in fair value of contingent consideration in the condensed consolidated statements of comprehensive income.

 

Interest Income and Expense

 

Net interest expense was approximately $1.1 million for the three-month period ended June 30, 2023, compared to approximately $0.7 million for the same period in 2022. The increase in net interest expense for the three-month period ended June 30, 2023 was primarily due to higher interest rates in 2023.

 

Net interest expense was approximately $2.0 million for the six-month period ended June 30, 2023 compared to approximately $1.1 million in the same period of 2022. The increase in net interest expense for the three-month period ended June 30, 2023 was primarily due to higher interest rates in 2023.

 

Other (Income) Expense

 

Other income was approximately $20 thousand and $157 thousand for the three-month periods ended June 30, 2023 and 2022, respectively, and other expense was approximately $56 thousand compared to other income of $209 thousand for the six-month periods ended June 30, 2023 and 2022, respectively. The changes in other income/expense in both periods are primarily generated by foreign currency transaction gains/losses and changes in the fair value of the swap liability (in 2022 only), which is driven by anticipated future interest rate changes, offset by net cash settlement amounts related to the swap.

 

Income Taxes

 

The Company recorded tax expense of approximately 25.6% and 23.2% of income before income tax expense, respectively, for each of the three-month periods ended June 30, 2023 and 2022. The increase in the effective tax rate for the current period as compared to the prior period was largely due to expected annual limitations on deductibility of executive cash and equity compensation due to section 162M of the IRS code.

 

The Company recorded tax expense of approximately 22.4% and 22.1% of income before income tax expense, respectively, for each of the six-month periods ended June 30, 2023 and 2022. The increase in the effective tax rate for the current period as compared to the prior period was largely due to expected annual limitations on deductibility of executive cash and equity compensation due to section 162M of the IRS code. The Company notes the potential for volatility in its effective tax rate, as any windfall or shortfall tax benefits related to its share-based compensation plans will be recorded directly into income tax expense.

 

22

 

Liquidity and Capital Resources

 

The Company generally funds its operating expenses, capital requirements, and growth plan through internally generated cash and bank credit facilities.

 

Cash Flows

 

Net cash provided by operations for the six-month period ended June 30, 2023 was approximately $10.6 million and was primarily a result of net income generated of approximately $21.6 million, depreciation and amortization of approximately $5.6 million, share-based compensation of approximately $2.3 million, a change in the fair value of contingent consideration of approximately $3.1 million, a decrease in other assets of $1.2 million, and an increase in accounts payable of approximately $4.9 million due to the building of inventory to meet demand and the timing of vendor payments in the ordinary course of business.

 

These cash inflows and adjustments to income were partially offset by a decrease in deferred taxes of approximately $0.5 million, an increase in accounts receivable of approximately $8.8 million due to higher sales in the last two months of the second quarter of 2023 as compared to the same period in the fourth quarter of 2022, an increase in inventory of approximately $9.4 million due to inventory build for upcoming demand and restocking to historical levels, an increase in prepaid expenses and other current assets of approximately $1.4 million primarily due to the payment of current year insurance policies, a decrease in income taxes payable of approximately $1.4 million, a decrease in accrued expenses of approximately $6.2 million due primarily to the payment of accrued compensation, and a decrease in deferred revenue of approximately $0.4 million to the recognition of deferred tooling and development revenue.

 

Net cash used in investing activities during the six-month period ended June 30, 2023 was approximately $4.9 million and was primarily the result of additions of manufacturing machinery and equipment and various building improvements across the Company.

 

Net cash used in financing activities was approximately $4.8 million during the six-month period ended June 30, 2023, representing payments on the revolving line of credit of approximately $5.0 million, principal payments of long-term debt of approximately $2.0 million, payments of contingent consideration of approximately $5.0 million, and statutory withholding for stock options exercised and restricted stock units vested of approximately $2.5 million, partially offset by borrowings under our credit facility of approximately $9.0 million and proceeds from the exercise of stock options of approximately $0.7 million.

 

Outstanding and Available Debt

 

On December 22, 2021, the Company, as the borrower, entered into a secured $130 million Second Amended and Restated Credit Agreement (the “Second Amended and Restated Credit Agreement”) with certain of the Company’s subsidiaries (the “Subsidiary Guarantors”) and Bank of America, N.A., in its capacity as the initial lender, Administra‐tive Agent, Swingline Lender and L/C Issuer, and certain other lenders from time-to-time party thereto. The Second Amended and Restated Credit Agreement amends and restates the Company’s prior credit agreement, originally dated as of February 1, 2018.

 

The credit facilities under the Second Amended and Restated Credit Agreement consist of a $40 million secured term loan to the Company and a secured revolving credit facility, under which the Company may borrow up to $90 million. The Second Amended and Restated Credit Agreement matures on December 21, 2026. The secured term loam requires quarterly principal payments of $1,000,000 commencing on March 31, 2022. The proceeds of the Second Amended and Restated Credit Agreement may be used for general corporate purposes, including funding the acquisition of DAS Medical, as well as certain other permitted acquisitions. The Company’s obligations under the Second Amended and Restated Credit Agreement are guaranteed by the Subsidiary Guarantors.

 

The Second Amended and Restated Credit Agreement calls for interest determined by the Bloomberg Short-Term Bank Yield Index rate (“BSBY”) plus a margin that ranges from 1.25% to 2.0% or, at the discretion of the Company, the bank’s prime rate less a margin that ranges from .25% to zero. In both cases the applicable margin is dependent upon Company performance. Under the Second Amended and Restated Credit Agreement, the Company is subject to a minimum fixed-charge coverage financial covenant as well as a maximum total funded debt to EBITDA financial covenant. The Second Amended and Restated Credit Agreement contains other covenants customary for transactions of this type, including restrictions on certain payments, permitted indebtedness, and permitted investments.

 

23

 

At June 30, 2023, the Company had approximately $57.0 million in borrowings outstanding under the Second Amended and Restated Credit Agreement, which were used as partial consideration for the DAS Medical and Advant acquisitions, and also had approximately $0.7 million in standby letters of credit outstanding, drawable as a financial guarantee on worker’s compensation insurance policies. At June 30, 2023, the applicable interest rate was approximately 6.4% and the Company was in compliance with all covenants under the Second Amended and Restated Credit Agreement.

 

Long-term debt consists of the following (in thousands):

 

   

June 30, 2023

 

Revolving credit facility

  $ 23,000  

Term loan

    34,000  

Total long-term debt

    57,000  

Current portion

    (4,000 )

Long-term debt, excluding current portion

  $ 53,000  

 

Future maturities of long-term debt at June 30, 2023 are as follows (in thousands):

 

   

Term Loan

   

Revolving credit facility

   

Total

 

Remainder of 2023

  $ 2,000     $ -     $ 2,000  

2024

    4,000       -       4,000  

2025

    4,000       -       4,000  

2026

    24,000       23,000       47,000  
    $ 34,000     $ 23,000     $ 57,000  

 

Future Liquidity

 

The Company requires cash to pay its operating expenses, purchase capital equipment, and to service its contractual obligations. The Company’s principal sources of funds are its operations and its amended and restated credit facility. The Company generated cash of approximately $10.6 million from operations during the six months ended June 30, 2023; and the Company cannot guarantee that its operations will generate cash in future periods. The Company’s longer-term liquidity is contingent upon future operating performance and additional borrowings from the revolving credit facility are possible. Further, the economic uncertainty resulting from events including inflation, bank failures and, the Ukraine war could affect the Company’s long-term ability to access the public markets and obtain necessary capital in order to properly capitalize and continue operations.

 

Throughout fiscal 2023, the Company plans to continue to add capacity to enhance operating efficiencies in its manufacturing plants. The Company may consider additional acquisitions of companies, technologies, or products that are complementary to its business. The Company believes that its existing resources, including its revolving credit facility, together with cash expected to be generated from operations, will be sufficient to fund its cash flow requirements, including capital asset acquisitions, through the next twelve months.

 

The Company may also require additional capital in the future to fund capital expenditures, acquisitions, or other investments. These capital requirements could be substantial. The Company anticipates that any future expansion of its business will be financed through existing resources, cash flow from operations, the Company's revolving credit facility, or other new financing. The Company cannot guarantee that it will be able to meet existing financial covenants or obtain other new financing on favorable terms, if at all. The Company's liquidity will be impacted to the extent additional stock repurchases are made under the Company's stock repurchase program.

 

Stock Repurchase Program

 

The Company accounts for treasury stock under the cost method, using the first-in, first-out flow assumption, and includes treasury stock as a component of stockholders’ equity. On June 16, 2015, the Company announced that its Board of Directors authorized the repurchase of up to $10.0 million of the Company’s outstanding common stock. Under the program, the Company is authorized to repurchase shares through Rule 10b5-1 plans, open market purchases, privately negotiated transactions, block purchases or otherwise in accordance with applicable federal securities laws, including Rule 10b-18 of the Securities Exchange Act of 1934. The stock repurchase program will end upon the earlier of the date on which the plan is terminated by the Board or when all authorized repurchases are completed. The timing and amount of stock repurchases, if any, will be determined based upon our evaluation of market conditions and other factors. The stock repurchase program may be suspended, modified, or discontinued at any time, and the Company has no obligation to repurchase any amount of its common stock under the program.

The Company did not repurchase any shares of its common stock under this program in the first six months of 2023. At June 30, 2023 approximately $9.4 million was available for future repurchases of the Company’s common stock under this authorization.

 

24

 

Critical Accounting Estimates

 

There have been no material changes to the Company’s Critical Accounting Estimates from those disclosed in our Annual Report on Form 10-K for the year ended December 31, 2022.

 

Commitments and Contractual Obligations

 

There have been no material changes outside the ordinary course of business to our contractual obligations and commitments, as disclosed in our Annual Report on Form 10-K for the year ended December 31, 2022.

 

ITEM 3:         QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK

 

There have been no material changes in our market risks as previously disclosed in Item 7A of our Annual Report on Form 10-K for the year ended December 31, 2022.

 

ITEM 4:         CONTROLS AND PROCEDURES

 

As of the end of the period covered by this report (the “Evaluation Date”), the Company’s management, under the supervision and with the participation of the Company’s Chief Executive Officer and Chief Financial Officer, performed an evaluation of the effectiveness of the design and operation of the Company’s “disclosure controls and procedures” (as defined in Exchange Act Rule 13a-15(e) or 15d-15(e)). Based upon that evaluation, the Chief Executive Officer and Chief Financial Officer concluded that, as of the Evaluation Date, the Company’s disclosure controls and procedures were effective to ensure that information required to be disclosed by the Company in the reports that it files or submits under the Exchange Act, is (i) recorded, processed, summarized, and reported within the time periods specified in the Securities and Exchange Commission’s rules and forms, and (ii) accumulated and communicated to the Company’s management, including the Chief Executive Officer and Chief Financial Officer, as appropriate to allow timely decisions regarding required disclosure.

 

An evaluation was also performed under the supervision and with the participation of our management, including the Company’s Chief Executive Officer and Chief Financial Officer, of any change in our internal control over financial reporting that occurred during our last fiscal quarter that has materially affected, or is reasonably likely to materially affect, the Company’s internal control over financial reporting. That evaluation did not identify any change in the Company’s internal control over financial reporting that occurred during our latest fiscal quarter that has materially affected, or is reasonably likely to materially affect, the Company’s internal control over financial reporting.

 

PART II:        OTHER INFORMATION

 

ITEM 1:         LEGAL PROCEEDINGS

 

The Company is not a party to any material litigation or other material legal proceedings. From time to time, the Company may be a party to various suits, claims and complaints arising in the ordinary course of business. In the opinion of management of the Company, these suits, claims and complaints should not result in final judgments or settlements that, in the aggregate, would have a material adverse effect on the Company’s financial condition or results of operations.

 

25

 

ITEM 1A:       RISK FACTORS

 

The Company faces a number of uncertainties and risks that are difficult to predict and many of which are outside of the Company's control. For a detailed discussion of the risks that affect our business, please refer to Part I, Item IA, “Risk Factors” in our Annual Report on Form 10-K for the fiscal year ended December 31, 2022 and Part II, Item 1A,. There have been no material changes from the risk factors included in our Annual Report on Form 10-K for the fiscal year ended December 31, 2022 and our Quarterly Report on Form-Q for the quarter ended March 31, 2023.

 

ITEM 2:          UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS

 

None

 

ITEM 3:          DEFAULTS UPON SENIOR SECURITIES

 

None

 

ITEM 4:          MINE SAFETY DISCLOSURES

 

Not Applicable

 

 

ITEM 5:          OTHER INFORMATION

 

Insider Trading Arrangements and Policies

 

During the second quarter of 2023, none of our directors or executive officers adopted Rule 10b5-1 trading plans and none of our directors or executive officers terminated a Rule 10b5-1 trading plan or adopted or terminated a non-Rule 10b5-1 trading arrangement (as defined in Item 408(c) of regulation S-K)

 

ITEM 6:           EXHIBITS

 

Exhibit No. Description

3.1

Amended and Restated Certificate of Incorporation of UFP Technologies, Inc., dated June 7, 2023 (incorporated by reference to Exhibit 3.1 to the Company’s Current Report on Form 8-K filed with the SEC on June 13, 2023 (SEC File No. 001-12648)).

31.1

Rule 13a-14(a)/15d-14(a) Certification of the Chief Executive Officer.*

31.2

Rule 13a-14(a)/15d-14(a) Certification of the Chief Financial Officer.*

32.1

Certifications 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 Instance Document.*

101.SCH

Inline XBRL Taxonomy Extension Schema Document.*

101.CAL

Inline XBRL Taxonomy Calculation Linkbase Document.*

101.LAB

Inline XBRL Taxonomy Label Linkbase Document.*

101.PRE

Inline XBRL Taxonomy Presentation Linkbase Document.*

101.DEF

Inline XBRL Taxonomy Extension Definition Linkbase Document.*

104 Cover Page Interactive Data File (formatted as Inline XBRL with applicable taxonomy extension information contained in Exhibits 101)

 


*           Filed herewith.

**         Furnished herewith.

 

26

 
 

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.

 

UFP TECHNOLOGIES, INC.

 

Date: August 9, 2023

 

By: /s/ R. Jeffrey Bailly

   

R. Jeffrey Bailly

Chairman, Chief Executive Officer, President, and Director

(Principal Executive Officer)

     

Date: August 9, 2023

 

By: /s/ Ronald J. Lataille 

   

Ronald J. Lataille

Chief Financial Officer

(Principal Financial Officer

 

 

 

 

 

 

27
EX-31.1 2 ex_553421.htm EXHIBIT 31.1 HTML Editor

EXHIBIT 31.1

 

Certification Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

 

I, R. Jeffrey Bailly, President and Chief Executive Officer of UFP Technologies, Inc. certify that:

 

1.

I have reviewed this quarterly report on Form 10-Q of UFP Technologies, Inc.;

 

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(s) 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(s) 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:  August 9, 2023  /s/ R. Jeffrey Bailly        
  R. Jeffrey Bailly
  Chairman, Chief Executive Officer, President, and Director
  (Principal Executive Officer)

 

 
EX-31.2 3 ex_553422.htm EXHIBIT 31.2 HTML Editor

EXHIBIT 31.2

 

Certification Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

 

I, Ronald J. Lataille, Chief Financial Officer of UFP Technologies, Inc., certify that:

 

1.

I have reviewed this quarterly report on Form 10-Q of UFP Technologies, Inc.;

 

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(s) 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(s) 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:   August 9, 2023 /s/ Ronald J. Lataille     
  Ronald J. Lataille
  Chief Financial Officer
 

(Principal Financial Officer)

 

 
EX-32.1 4 ex_553423.htm EXHIBIT 32.1 HTML Editor

EXHIBIT 32.1

 

Certification Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002

(Subsections (a) and (b) of Section 1350, Chapter 63 of Title 18, United States Code)

 

Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 (subsections (a) and (b) of Section 1350, Chapter 63 of Title 18, United States Code), the undersigned officers of UFP Technologies, Inc., a Delaware corporation (the “Company”) do hereby certify that, to the best of such officers’ knowledge and belief, that:

 

(1)      The Quarterly Report on Form 10-Q for the quarter ended June 30, 2023, (the “Form 10‑Q”) of the Company 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 Form 10-Q fairly presents, in all materials respects, the financial condition and results of operations of the Company.

 

Date:  August 9, 2023 /s/ R. Jeffrey Bailly                                                                         
  R. Jeffrey Bailly
  Chairman, Chief Executive Officer, President, and Director
  (Principal Executive Officer)

 

Date:  August 9, 2023 /s/ Ronald J. Lataille                                                                         
  Ronald J. Lataille
  Chief Financial Officer
  (Principal Financial Officer)

 

 

A signed original of these written statements required by Section 906 has been provided to UFP Technologies, Inc. and will be retained by UFP Technologies, Inc. and furnished to the Securities and Exchange Commission or its staff upon request.

 

 
EX-101.SCH 5 ufpt-20230630.xsd XBRL TAXONOMY EXTENSION SCHEMA 000 - Document - Document And Entity Information link:calculationLink link:definitionLink link:presentationLink 001 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) link:calculationLink link:definitionLink link:presentationLink 002 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) link:calculationLink link:definitionLink link:presentationLink 003 - Statement - Condensed Consolidated Statements of Income (Unaudited) link:calculationLink link:definitionLink link:presentationLink 004 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) link:calculationLink link:definitionLink link:presentationLink 005 - Statement - Condensed Consolidated Statements of Cash Flows link:calculationLink link:definitionLink link:presentationLink 006 - Disclosure - Note 1 - Basis of Presentation link:calculationLink link:definitionLink link:presentationLink 007 - Disclosure - Note 2 - Acquisitions and Divestiture link:calculationLink link:definitionLink link:presentationLink 008 - Disclosure - Note 3 - Revenue Recognition link:calculationLink link:definitionLink link:presentationLink 009 - Disclosure - Note 4 - Supplemental Cash Flow Information link:calculationLink link:definitionLink link:presentationLink 010 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses link:calculationLink link:definitionLink link:presentationLink 011 - Disclosure - Note 6 - Fair Value of Financial Instruments link:calculationLink link:definitionLink link:presentationLink 012 - Disclosure - Note 7 - Share-based Compensation link:calculationLink link:definitionLink link:presentationLink 013 - Disclosure - Note 8 - Inventories link:calculationLink link:definitionLink link:presentationLink 014 - Disclosure - Note 9 - Property, Plant and Equipment link:calculationLink link:definitionLink link:presentationLink 015 - Disclosure - Note 10 - Leases link:calculationLink link:definitionLink link:presentationLink 016 - Disclosure - Note 11 - Income Per Share link:calculationLink link:definitionLink link:presentationLink 017 - Disclosure - Note 12 - Segment Reporting link:calculationLink link:definitionLink link:presentationLink 018 - Disclosure - Note 13 - Goodwill and Other Intangible Assets link:calculationLink link:definitionLink link:presentationLink 019 - Disclosure - Note 14 - Other Long-term Liabilities link:calculationLink link:definitionLink link:presentationLink 020 - Disclosure - Note 15 - Income Tax link:calculationLink link:definitionLink link:presentationLink 021 - Disclosure - Note 16 - Indebtedness link:calculationLink link:definitionLink link:presentationLink 022 - Disclosure - Item 5 - Other Information link:calculationLink link:definitionLink link:presentationLink 023 - Disclosure - Note 2 - Acquisitions and Divestiture (Tables) link:calculationLink link:definitionLink link:presentationLink 024 - Disclosure - Note 3 - Revenue Recognition (Tables) link:calculationLink link:definitionLink link:presentationLink 025 - Disclosure - Note 4 - Supplemental Cash Flow Information (Tables) link:calculationLink link:definitionLink link:presentationLink 026 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses (Tables) link:calculationLink link:definitionLink link:presentationLink 027 - Disclosure - Note 6 - Fair Value of Financial Instruments (Tables) link:calculationLink link:definitionLink link:presentationLink 028 - Disclosure - Note 7 - Share-based Compensation (Tables) link:calculationLink link:definitionLink link:presentationLink 029 - Disclosure - Note 8 - Inventories (Tables) link:calculationLink link:definitionLink link:presentationLink 030 - Disclosure - Note 9 - Property, Plant and Equipment (Tables) link:calculationLink link:definitionLink link:presentationLink 031 - Disclosure - Note 10 - Leases (Tables) link:calculationLink link:definitionLink link:presentationLink 032 - Disclosure - Note 11 - Income Per Share (Tables) link:calculationLink link:definitionLink link:presentationLink 033 - Disclosure - Note 12 - Segment Reporting (Tables) link:calculationLink link:definitionLink link:presentationLink 034 - Disclosure - Note 13 - Goodwill and Other Intangible Assets (Tables) link:calculationLink link:definitionLink link:presentationLink 035 - Disclosure - Note 14 - Other Long-term Liabilities (Tables) link:calculationLink link:definitionLink link:presentationLink 036 - Disclosure - Note 16 - Indebtedness (Tables) link:calculationLink link:definitionLink link:presentationLink 037 - Disclosure - Note 2 - Acquisitions and Divestiture (Details Textual) link:calculationLink link:definitionLink link:presentationLink 038 - Disclosure - Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details) link:calculationLink link:definitionLink link:presentationLink 039 - Disclosure - Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details) link:calculationLink link:definitionLink link:presentationLink 040 - Disclosure - Note 3 - Revenue Recognition (Details Textual) link:calculationLink link:definitionLink link:presentationLink 041 - Disclosure - Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details) link:calculationLink link:definitionLink link:presentationLink 042 - Disclosure - Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details) link:calculationLink link:definitionLink link:presentationLink 043 - Disclosure - Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details) link:calculationLink link:definitionLink link:presentationLink 044 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details) link:calculationLink link:definitionLink link:presentationLink 045 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details) link:calculationLink link:definitionLink link:presentationLink 046 - Disclosure - Note 6 - Fair Value of Financial Instruments (Details Textual) link:calculationLink link:definitionLink link:presentationLink 047 - Disclosure - Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details) link:calculationLink link:definitionLink link:presentationLink 048 - Disclosure - Note 7 - Share-based Compensation (Details Textual) link:calculationLink link:definitionLink link:presentationLink 049 - Disclosure - Note 7 - Share-based Compensation - Compensation Cost (Details) link:calculationLink link:definitionLink link:presentationLink 050 - Disclosure - Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details) link:calculationLink link:definitionLink link:presentationLink 051 - Disclosure - Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details) link:calculationLink link:definitionLink link:presentationLink 052 - Disclosure - Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details) link:calculationLink link:definitionLink link:presentationLink 053 - Disclosure - Note 8 - Inventories - Summary of Inventory (Details) link:calculationLink link:definitionLink link:presentationLink 054 - Disclosure - Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details) link:calculationLink link:definitionLink link:presentationLink 055 - Disclosure - Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details) link:calculationLink link:definitionLink link:presentationLink 056 - Disclosure - Note 10 - Leases - Lease Cost (Details) link:calculationLink link:definitionLink link:presentationLink 057 - Disclosure - Note 10 - Leases - Aggregate Future Lease Payments (Details) link:calculationLink link:definitionLink link:presentationLink 058 - Disclosure - Note 11 - Income Per Share (Details Textual) link:calculationLink link:definitionLink link:presentationLink 059 - Disclosure - Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details) link:calculationLink link:definitionLink link:presentationLink 060 - Disclosure - Note 12 - Segment Reporting (Details Textual) link:calculationLink link:definitionLink link:presentationLink 061 - Disclosure - Note 12 - Segment Reporting - Net Sales by Market (Details) link:calculationLink link:definitionLink link:presentationLink 062 - Disclosure - Note 13 - Goodwill and Other Intangible Assets (Details Textual) link:calculationLink link:definitionLink link:presentationLink 063 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details) link:calculationLink link:definitionLink link:presentationLink 064 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details) link:calculationLink link:definitionLink link:presentationLink 065 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details) link:calculationLink link:definitionLink link:presentationLink 066 - Disclosure - Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details) link:calculationLink link:definitionLink link:presentationLink 067 - Disclosure - Note 15 - Income Tax (Details Textual) link:calculationLink link:definitionLink link:presentationLink 068 - Disclosure - Note 16 - Indebtedness (Details Textual) link:calculationLink link:definitionLink link:presentationLink 069 - Disclosure - Note 16 - Indebtedness - Long-term Debt (Details) link:calculationLink link:definitionLink link:presentationLink 070 - Disclosure - Note 16 - Indebtedness - Schedule of Maturity (Details) link:calculationLink link:definitionLink link:presentationLink EX-101.CAL 6 ufpt-20230630_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.DEF 7 ufpt-20230630_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE EX-101.LAB 8 ufpt-20230630_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE Document And Entity Information Expected dividends Finite-Lived Intangibles Note To Financial Statement Details Textual Exercise price (in dollars per share) Note 2 - Acquisitions and Divestiture Note 3 - Revenue Recognition Note 4 - Supplemental Cash Flow Information Risk-free interest rate Note 5 - Receivables and Allowance for Credit Losses Note 6 - Fair Value of Financial Instruments Note 7 - Share-based Compensation Note 8 - Inventories Note 9 - Property, Plant and Equipment Note 10 - Leases Accounts receivable Income Tax Disclosure [Text Block] Note 11 - Income Per Share Other current assets Note 12 - Segment Reporting Note 13 - Goodwill and Other Intangible Assets Note 14 - Other Long-term Liabilities Expected volatility Inventory Note 16 - Indebtedness us-gaap_LiabilitiesCurrent Total current liabilities Schedule of Maturities of Long-Term Debt [Table Text Block] Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details) Schedule of Debt [Table Text Block] Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details) Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details) Expected term (years) (Year) Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details) Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details) Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details) us-gaap_BusinessCombinationConsiderationTransferred1 Total consideration Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details) Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details) Note 7 - Share-based Compensation - Compensation Cost (Details) Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details) Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details) Other liability us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred Business Combination, Consideration Transferred, Liabilities Incurred Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details) Note 8 - Inventories - Summary of Inventory (Details) Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details) Share-Based Payment Arrangement, Option, Activity [Table Text Block] Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details) Note 10 - Leases - Lease Cost (Details) Awarded, weighted average award date fair value (in dollars per share) Note 10 - Leases - Aggregate Future Lease Payments (Details) Foreign currency translation adjustment us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired Business Acquisition, Percentage of Voting Interests Acquired Shares vested, weighted average award date fair value (in dollars per share) Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details) Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block] Shares forfeited, weighted average award date fair value (in dollars per share) Note 12 - Segment Reporting - Net Sales by Market (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue Outstanding, weighted average award date fair value (in dollars per share) Outstanding, weighted average award date fair value (in dollars per share) Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details) Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod Shares forfeited, restricted stock units (in shares) us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic Basic (in dollars per share) Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber Outstanding, restricted stock units (in shares) Outstanding, restricted stock units (in shares) Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details) Note 16 - Indebtedness - Long-term Debt (Details) Note 16 - Indebtedness - Schedule of Maturity (Details) Notes To Financial Statements Awarded, restricted stock units (in shares) Notes To Financial Statements [Abstract] us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod Shares vested, restricted stock units (in shares) us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted Diluted (in dollars per share) Vested and expected to vest, weighted average remaining contractual life (Year) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice Vested and expected to vest, weighted average exercise price (in dollars per share) Current installments of long-term debt Current portion Other comprehensive income: us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber Vested and expected to vest, shares under options (in shares) Vested and expected to vest, aggregate intrinsic value us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice Exercisable, weighted average exercise price (in dollars per share) us-gaap_BusinessAcquisitionsProFormaIncomeLossFromContinuingOperationsBeforeChangesInAccountingAndExtraordinaryItemsNetOfTax Operating income us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1 Exercisable, weighted average remaining contractual life (Year) us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss Net income us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1 Exercisable, aggregate intrinsic value us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value Business Acquisition, Pro Forma Information [Table Text Block] us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber Exercisable, shares under options (in shares) us-gaap_BusinessAcquisitionsProFormaRevenue Sales Outstanding, weighted average remaining contractual life (Year) Outstanding, aggregate intrinsic value Weighted-average grant date fair value (in dollars per share) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice Outstanding, weighted average exercise price (in dollars per share) Outstanding, weighted average exercise price (in dollars per share) Deferred revenue Schedule of Goodwill [Table Text Block] us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice Granted (in dollars per share) us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice Granted, weighted average exercise price (in dollars per share) Accrued expenses us-gaap_AccruedIncomeTaxesCurrent Income taxes payable Accounts payable us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber Outstanding, shares under options (in shares) Outstanding, shares under options (in shares) Revolving Credit Facility [Member] Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Capital additions accrued but not yet paid Credit Facility [Axis] Proceeds from sale of fixed assets Credit Facility [Domain] Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block] us-gaap_PolicyTextBlockAbstract Accounting Policies us-gaap_PaymentsToAcquirePropertyPlantAndEquipment Additions to property, plant, and equipment Weighted average common equivalent shares due to restricted stock, stock options and RSUs (in shares) ufpt_FinanceLeaseLiabilityToBePaidAfterYearFour Thereafter, finance Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid 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). ufpt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour Thereafter, operating 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). Non-cash investing and financing activities: Weighted average common shares outstanding: Noncompete Agreements [Member] Income taxes, net of refunds Current liabilities: Product [Member] us-gaap_Assets Total assets Cash paid for: us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) Intellectual Property [Member] Customer Lists [Member] Mergers, Acquisitions and Dispositions Disclosures [Text Block] us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense Share-Based Payment Arrangement, Expense, Tax Benefit Deferred income taxes Share-Based Payment Arrangement [Text Block] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] us-gaap_ContractWithCustomerAssetNet Unbilled receivables - beginning of period Unbilled receivables - end of period Award Type [Domain] Award Type [Axis] Net income Net income us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization Accumulated amortization us-gaap_FiniteLivedIntangibleAssetsNet Total us-gaap_IntangibleAssetsNetExcludingGoodwill Net balance Intangible assets, net Restricted Stock Units (RSUs) [Member] Gross amount Foreign currency translation us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment Accumulated depreciation and amortization Property, plant and equipment, net Net property, plant and equipment Goodwill December 31, 2022 June 30, 2023 Property, plant, and equipment Long-Term Debt, Type [Axis] Long-Term Debt, Type [Domain] ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice Shares Paid for Tax Withholding for Share Based Compensation Market Price (in dollars per share) For net-share settlement of share-based awards when the employer settles employees' income tax withholding obligations, this element represents the market price per share of shares used by the employees to repay the employer. Employee and Nonemployee Stock Option [Member] Contract that gives the holder the right, but not the obligation, either to purchase or to sell a certain number of shares of stock at a predetermined price for a specified period of time. Medical [Member] Information pertaining to the Medical group of major customers. Cash flows from investing activities: Automotive [Member] Information pertaining to the Automotive group of major customers. Income taxes payable Aerospace & Defense [Member] Information pertaining to the Aerospace & Defense group of major customers. Net income per share: Earnings Per Share [Text Block] Non-qualified deferred compensation plan and other liabilities Line of Credit [Member] Accrued expenses us-gaap_IncreaseDecreaseInAccruedLiabilities Income tax expense Subsidiary Guarantors [Member] Related to the subsidiary guarantors granting the credit agreement to the company. Furniture, Fixtures, and Computers [Member] Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities and long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems. Schedule of Employee Service Share Based Compensation Allocation of Recognized Period Costs, By Award Type [Table Text Block] Tabular disclosure of the allocation of equity-based compensation costs to a given line item on the balance sheet and income statement for the period. This may include the reporting line for the costs and the amount capitalized and expensed. The amounts are aggregated by award type. Accounts payable us-gaap_IncreaseDecreaseInAccountsPayable Cash and cash equivalents Share-based compensation us-gaap_AllocatedShareBasedCompensationExpense Amendment Flag Comprehensive Income us-gaap_ComprehensiveIncomeNetOfTax Comprehensive income City Area Code us-gaap_GainLossOnSaleOfBusiness Gain (Loss) on Disposition of Business us-gaap_DebtInstrumentPeriodicPaymentPrincipal Debt Instrument, Periodic Payment, Principal us-gaap_GainLossOnSaleOfPropertyPlantEquipment Loss (gain) on sale of property, plant & equipment Deferred revenue us-gaap_IncreaseDecreaseInContractWithCustomerLiability us-gaap_SharesOutstanding Balance (in shares) Balance (in shares) Common stock, shares outstanding (in shares) us-gaap_IncreaseDecreaseInOtherOperatingAssets Other assets Current Fiscal Year End Date us-gaap_DebtInstrumentBasisSpreadOnVariableRate1 Debt Instrument, Basis Spread on Variable Rate us-gaap_DebtInstrumentInterestRateStatedPercentage Debt Instrument, Interest Rate, Stated Percentage Variable lease cost us-gaap_LeaseCost Total lease cost us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets Prepaid expenses and other current assets us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent Operating Lease Cost: Document Fiscal Period Focus Operating lease cost Document Fiscal Year Focus Short-term lease cost Lease, Cost [Table Text Block] Document Period End Date Operating lease right of use asset us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1 Operating (Year) Entity File Number Entity Emerging Growth Company us-gaap_DebtInstrumentFaceAmount Debt Instrument, Face Amount Document Type Entity Small Business Entity Shell Company Document Information [Line Items] Document Information [Table] Entity Filer Category Debt Instrument [Axis] Entity Current Reporting Status Debt Instrument, Name [Domain] Acquisition costs Business Combination, Acquisition Related Costs Issuer Rule 10b5-1, Material Terms [Text Block] The entire disclosure for material terms under issuer rule 10b5-1. Variable Rate [Domain] Prime Rate [Member] industrial or Other [Member] Represents industrial or other. Two Customers [Member] Represents two customers. Variable Rate [Axis] President and Chief Executive Officer [Member] Represents President and Chief Executive Officer . us-gaap_ConcentrationRiskPercentage1 Concentration Risk, Percentage us-gaap_IncreaseDecreaseInAccountsReceivable Receivables, net Entity Tax Identification Number Entity Central Index Key Entity Registrant Name Exercise of stock options net of shares presented for exercise Term Loan [Member] Represents information relating to term loans. Net share settlement of RSUs Net share settlement of RSUs Entity [Domain] Customer Concentration Risk [Member] Legal Entity [Axis] Entity Address, Address Line One us-gaap_AmortizationOfIntangibleAssets Amortization of Intangible Assets Entity Address, City or Town Entity Address, Postal Zip Code us-gaap_TreasuryStockCommonValue Treasury stock at cost: 29,559 shares at June 30, 2023 and December 31, 2022 Entity Address, State or Province Concentration Risk Type [Axis] Concentration Risk Type [Domain] us-gaap_AllowanceForDoubtfulAccountsReceivable Allowance - beginning of period Allowance - end of period Entity Common Stock, Shares Outstanding Revenue Benchmark [Member] Accounts Receivable [Member] us-gaap_IncreaseDecreaseInInventories Inventories Trading Symbol Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Domain] Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Local Phone Number Exercise of stock options net of shares presented for exercise (in shares) Exercised, shares under options (in shares) us-gaap_GainLossOnDispositionOfAssets Loss (gain) on disposal of property, plant & equipment us-gaap_TableTextBlock Notes Tables us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity Line of Credit Facility, Maximum Borrowing Capacity Share-based compensation (in shares) Selling, general & administrative expenses Provision (Adjustment) for expected credit losses Share-based compensation us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross Granted, shares under options (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures (in shares) Line of Credit Facility, Lender [Domain] Collaborative Arrangement and Arrangement Other than Collaborative [Domain] Issuance of common stock (in shares) Raw materials Lender Name [Axis] us-gaap_LiabilitiesAndStockholdersEquity Total liabilities and stockholders' equity Finished goods Work in process Issuance of common stock us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent Disposal Group, Including Discontinued Operation, Assets, Noncurrent, Total Retained earnings Accumulated other comprehensive loss Debt Disclosure [Text Block] Interest expense, net Changes in operating assets and liabilities: us-gaap_DisclosureTextBlockAbstract Notes to Financial Statements Inventory Disclosure [Text Block] Operating lease liabilities, long-term Schedule of Inventory, Current [Table Text Block] Present value of lease liabilities, operating Deferred income taxes us-gaap_DeferredIncomeTaxesAndTaxCredits Operating lease liabilities, current Finance lease liabilities, current Finance lease liabilities, long-term Operating lease ROU assets Engineering and Development [Member] Represents the information pertaining to engineering and development. us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue Total lease payments, operating Tooling and Machinery [Member] Represents information pertaining to tooling and machinery. us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount Less: Interest, operating Present value of lease liabilities, finance Financing cash flows from finance leases Principal payments on finance lease obligations Thereafter us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree 2026, operating Remainder of 2023 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour 2027, operating Finance lease ROU assets 2025 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo 2026 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree Increases due to consideration received from customers Amount of increase in obligation to transfer good or service to customer for which consideration from customer has been received. 2027 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths 2024, operating 2028 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo 2025, operating Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] 2024 us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities Accrued expenses Amount of accrued liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date. Other assets Share-based compensation us-gaap_ShareBasedCompensation us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear Remainder of 2023, operating Weighted-average amortization period (years) (Year) Schedule of Finite-Lived Intangible Assets [Table Text Block] Deferred Revenue [Member] Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable. Advant Medical [Member] Represents information related to Advant Medicaal, Inc.. Depreciation and amortization us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation (in shares) Net share settlement of RSUs (in shares) Intangible Assets Disclosure [Text Block] us-gaap_AssetsCurrent Total current assets Lessee, Operating and Finance Leases [Text Block] The entire disclosure for operating and finance leases of lessee. Includes, but is not limited to, description of operating and finance leases and maturity analysis of operating and finance lease liabilities. Increases due to revenue recognized, not invoiced to customers Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, from unbilled revenue recognized. ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesIncomeTax Income taxes Amount of liabilities incurred for income taxes assumed at the acquisition date. Treasury stock, shares (in shares) Change in fair value of contingent consideration Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability Change in fair value of contingent consideration ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredTaxes Deferred taxes Amount of deferred taxes assumed at the acquisition date. Common stock, $.01 par value, 20,000,000 shares authorized; 7,668,371 and 7,638,812 shares issued and outstanding, respectively, at June 30, 2023; 7,611,244 and 7,581,685 shares issued and outstanding, respectively, at December 31, 2022 Adjustments to reconcile net income to net cash provided by operating activities: Measurement Frequency [Axis] Measurement Frequency [Domain] Fair Value, Recurring [Member] Common stock, shares authorized (in shares) Common stock, shares issued (in shares) Common stock, par value (in dollars per share) Lessee, Operating and Finance Leases, Liability, Maturity [Table Text Block] Tabular disclosure of undiscounted cash flows of lessee's operating and finance lease liabilities. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating and finance lease liabilities recognized in statement of financial position. Statistical Measurement [Domain] Operating cash flows from operating leases Maximum [Member] Long-Lived Assets [Member] Represents long-lived assets. Minimum [Member] Weighted Average [Member] ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill Total identifiable assets Amount of assets acquired, including goodwill at the acquisition date. Right of use assets Total ROU assets Represents the amount of of right-of-use asset from assets under operating and finance leases. Lease liabilities Total lease liabilities, current Present value of lessee's discounted obligation for lease payments from operating and finance leases, classified as current. Product and Service [Axis] ufpt_OperatingAndFinanceLeasesLiabilityNoncurrent Lease liabilities Total lease liabilities, long-term Present value of lessee's discounted obligation for lease payments from operating and finance leases, classified as noncurrent. Product and Service [Domain] Percentage of concentration risk The percentage of revenue, including tax collected from customer, from satisfaction of performance obligation by transferring promised good or service to customer. Statistical Measurement [Axis] Leases, Right-of-Use Assets and Liabilities [Table Text block] Tabular disclosure of the assets and liabilities of operating and finance leases. Schedule of Cash Flow, Supplemental Disclosures [Table Text Block] Preferred stock, $.01 par value, 1,000,000 shares authorized; no shares issued Preferred stock, shares issued (in shares) Interest Cash Flow, Supplemental Disclosures [Text Block] Prepaid expenses and other current assets Property, Plant and Equipment Disclosure [Text Block] Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block] Property, Plant and Equipment [Table Text Block] Preferred stock, shares authorized (in shares) Inventories Total inventory Preferred stock, par value (in dollars per share) Net sales Fair Value, Inputs, Level 3 [Member] Fair Value Hierarchy and NAV [Domain] Customer [Axis] Customer [Domain] Fair Value Hierarchy and NAV [Axis] us-gaap_ReceivablesNetCurrent Receivables, net Construction in Progress [Member] Cash flows from operating activities: Statement [Line Items] Accounts receivable–trade us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent Less allowance for credit losses us-gaap_NumberOfOperatingSegments Number of Operating Segments Receivables, net Additional paid-in capital Building and Building Improvements [Member] Lease Liabilities, Current [Member] Primary financial statement caption encompassing current lease liabilities. us-gaap_DeferredCompensationPlanAssets Non-qualified deferred compensation plan ufpt_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. Lease Liabilities, Noncurrent [Member] Primary financial statement caption encompassing lease liabilities, noncurrent. molded fiber business (“MFT”) and related real estate in Iowa [Member] Represents molded fiber business (“MFT”) and related real estate in Iowa. Land and Land Improvements [Member] Right of Use Assets [Member] Primary financial statement caption encompassing operating and finance leases, right of use assets. AOCI Attributable to Parent [Member] Stockholders’ equity: Leasehold Improvements [Member] us-gaap_OtherNonoperatingIncomeExpense Other (income) expenses Long-Lived Tangible Asset [Axis] Segment Reporting Disclosure [Text Block] Long-Lived Tangible Asset [Domain] Current assets: Fair Value Disclosures [Text Block] us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period us-gaap_ContractWithCustomerAssetReclassifiedToReceivable Decreases due to customer invoicing Effect of foreign currency exchange rates on cash and cash equivalents us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect Net increase (decrease) in cash and cash equivalents us-gaap_Liabilities Total liabilities us-gaap_NetCashProvidedByUsedInFinancingActivities Net cash (used in) provided by financing activities Commitments and contingencies Director [Member] us-gaap_OperatingIncomeLoss Operating income us-gaap_ContractWithCustomerLiabilityRevenueRecognized Contract with Customer, Liability, Revenue Recognized us-gaap_NetCashProvidedByUsedInOperatingActivities Net cash provided by (used in) operating activities us-gaap_NetCashProvidedByUsedInInvestingActivities Net cash used in investing activities us-gaap_GrossProfit Gross profit Cost of sales us-gaap_DeferredIncomeTaxLiabilitiesNet Deferred income taxes us-gaap_ContractWithCustomerLiability Deferred revenue Deferred revenue us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities Payment for Contingent Consideration Liability, Financing Activities Payment of contingent consideration us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation Payment of statutory withholdings for restricted stock units vested us-gaap_LettersOfCreditOutstandingAmount Letters of Credit Outstanding, Amount Other Liabilities Disclosure [Text Block] Geographic Distribution, Foreign [Member] Scenario [Domain] Geographic Distribution [Axis] Geographic Distribution [Domain] Retained Earnings [Member] Proceeds from exercise of stock options Proceeds from Stock Options Exercised Title of Individual [Domain] Title of Individual [Axis] Scenario [Axis] Treasury Stock, Common [Member] Additional Paid-in Capital [Member] Common Stock [Member] Equity Components [Axis] Equity Component [Domain] Total long-term debt Long-Term Debt Long-Term Debt us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest Income before income tax expense Accounts Receivable, Allowance for Credit Loss [Table Text Block] Disaggregation of Revenue [Table Text Block] us-gaap_RepaymentsOfLongTermDebt Principal payments of long-term debt Revenue from Contract with Customer [Text Block] Machinery and Equipment [Member] Balance Sheet Location [Axis] Balance Sheet Location [Domain] Document Quarterly Report Entity Incorporation, State or Country Code Accounting Policies [Abstract] Document Transition Report Selling, General and Administrative Expenses [Member] Entity Interactive Data Current Recoveries Security Exchange Name Title of 12(b) Security us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs Amounts written off against the allowance Contech Medical, Inc [Member] Represents Contech Medical, Inc. ufpt_ContractWithCustomerLiabilityRevenueRecognizedDuringPeriod Revenue recognized Amount of revenue recognized during period including amounts previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.) Income Statement Location [Axis] Income Statement Location [Domain] Collaborative Arrangement and Arrangement Other than Collaborative [Axis] Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] DAS Medical [Member] Represents DAS Medical. us-gaap_SharePrice Share Price (in dollars per share) us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares) Non-Competition Agreements [Member] Represents non-competition agreement. us-gaap_RepaymentsOfLinesOfCredit Payments on revolving line of credit us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding Diluted (in shares) Diluted weighted average common shares outstanding (in shares) Scenario, Adjustment [Member] Proceeds from advances on revolving line of credit Customer Contracts and Relationships [Member] Represents customer contracts and relationships. Asset Class [Axis] ufpt_BusinessCombinationAgreementTerm Business Combination, Agreement Term (Year) Represents agreement term for business combination. Asset Class [Domain] Statement [Table] Statement of Financial Position [Abstract] Diluted (in dollars per share) Secured Term Loan [Member] Represents secured term loan. Basic weighted average common shares outstanding (in shares) Basic (in shares) Secured Revolving Credit Facility [Member] Represents secured revolving credit facility. Bloomberg Short-term Bank Yield Index Rate [Member] Represents Bloomberg Short-term Bank Yield Index Rate. us-gaap_EffectiveIncomeTaxRateContinuingOperations Effective Income Tax Rate Reconciliation, Percent ufpt_NoncompetitionAgreementPaymentLiabilityNoncurrent Present value of non-competition payments Amount of obligation incurred for non-competition agreement payment, classified as noncurrent. Business Acquisition [Axis] Other ufpt_OtherLiabilitiesNoncurrentOther Amount of other noncurrent liabilities, classified as other. Basic (in dollars per share) Business Acquisition, Acquiree [Domain] Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Second Amended and Restated Credit Agreement [Member] Represents second amended and restated credit agreement. Statement of Cash Flows [Abstract] Remainder of 2023 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear Statement of Stockholders' Equity [Abstract] us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration Disposal Group, Including Discontinued Operation, Consideration Income Statement [Abstract] Other comprehensive income Other comprehensive loss Contech Medical, Inc and DAS Medical [Member] Represents Contech Medical, Inc and DAS Medical. 2026 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree Common Stock Outstanding [Member] Represents common stock outstanding. Present value of non-competition payments ufpt_PresentValueOfNoncompetitionAgreement Present Value of Non-competition Agreement Present value of non-competition agreement. Disposal Group Name [Axis] Disposal Group Name [Domain] Accrued contingent consideration (earn-out) us-gaap_BusinessCombinationContingentConsiderationLiability Business Combination, Contingent Consideration, Liability, Total Operating lease liabilities Amount of increase or decrease in operating lease liability. 2024 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths Lease right of use assets Amount of lease right-of-use assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date. 2025 us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo Other Noncurrent Liabilities [Table Text Block] Interest on lease liabilities us-gaap_FinanceLeaseLiabilityPaymentsDue Total lease payments, finance Amortization of right of use assets us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount Less: Interest, finance us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths 2024, finance us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo 2025, finance us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree 2026, finance us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour 2027, finance us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent Finance us-gaap_FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear Remainder of 2023, finance Accrued contingent consideration (earn-out) Fair Value, Assets Measured on Recurring Basis [Table Text Block] us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1 Finance (Year) Cash flows from financing activities: Other liabilities us-gaap_OtherLiabilitiesNoncurrent Other Liabilities, Noncurrent One Customer [Member] information pertaining to one customer. Intellectual Property/ Tradename and Brand [Member] Represents intellectual property/tradename and brand. Non-qualified deferred compensation plan Net assets acquired us-gaap_StockholdersEquity Total stockholders’ equity Balance Balance us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired Payments to Acquire Businesses, Net of Cash Acquired, Total Acquisition, net of cash acquired us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation Lease liabilities Class of Stock [Axis] us-gaap_CashAcquiredFromAcquisition Cash from Advant Long-term debt, excluding current portion Long-term debt, excluding current installments Cash paid at closing Payments to Acquire Businesses, Gross Schedule of Weighted Average Number of Shares [Table Text Block] us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable Accounts payable ufpt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow Disposal Group, Including Discontinued Operation, Consideration, Held in Escrow The amount of consideration for disposal group including discontinued operation held in escrow. us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment Property, plant, and equipment Other assets us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets EX-101.PRE 9 ufpt-20230630_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE XML 10 R1.htm IDEA: XBRL DOCUMENT v3.23.2
Document And Entity Information - shares
6 Months Ended
Jun. 30, 2023
Aug. 01, 2023
Document Information [Line Items]    
Entity Central Index Key 0000914156  
Entity Registrant Name UFP TECHNOLOGIES INC  
Amendment Flag false  
Current Fiscal Year End Date --12-31  
Document Fiscal Period Focus Q2  
Document Fiscal Year Focus 2023  
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jun. 30, 2023  
Document Transition Report false  
Entity File Number 001-12648  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 04-2314970  
Entity Address, Address Line One 100 Hale Street  
Entity Address, City or Town Newburyport  
Entity Address, State or Province MA  
Entity Address, Postal Zip Code 01950  
City Area Code 978  
Local Phone Number 352-2200  
Title of 12(b) Security Common Stock  
Trading Symbol UFPT  
Security Exchange Name NASDAQ  
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   7,638,812
XML 11 R2.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Balance Sheets (Current Period Unaudited) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 5,291 $ 4,451
Receivables, net 64,090 55,117
Inventories 63,049 53,536
Prepaid expenses and other current assets 4,641 3,242
Total current assets 137,071 116,346
Property, plant and equipment, net 59,839 58,072
Goodwill 113,168 113,028
Intangible assets, net 66,253 68,361
Non-qualified deferred compensation plan 4,945 4,148
Right of use assets 13,932 13,153
Deferred income taxes 1,926 1,448
Other assets 858 3,636
Total assets 397,992 378,192
Current liabilities:    
Accounts payable 25,125 19,961
Accrued expenses 16,772 23,122
Deferred revenue 4,266 4,679
Lease liabilities 2,614 2,517
Income taxes payable 216 1,682
Current installments of long-term debt 4,000 4,000
Total current liabilities 52,993 55,961
Long-term debt, excluding current installments 53,000 51,000
Deferred income taxes 458 448
Non-qualified deferred compensation plan 5,003 4,167
Lease liabilities 11,667 10,851
Other liabilities 14,586 18,220
Total liabilities 137,707 140,647
Commitments and contingencies
Stockholders’ equity:    
Preferred stock, $.01 par value, 1,000,000 shares authorized; no shares issued 0 0
Common stock, $.01 par value, 20,000,000 shares authorized; 7,668,371 and 7,638,812 shares issued and outstanding, respectively, at June 30, 2023; 7,611,244 and 7,581,685 shares issued and outstanding, respectively, at December 31, 2022 76 76
Additional paid-in capital 36,654 36,070
Retained earnings 224,218 202,596
Accumulated other comprehensive loss (76) (610)
Treasury stock at cost: 29,559 shares at June 30, 2023 and December 31, 2022 (587) (587)
Total stockholders’ equity 260,285 237,545
Total liabilities and stockholders' equity $ 397,992 $ 378,192
XML 12 R3.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) - $ / shares
Jun. 30, 2023
Dec. 31, 2022
Preferred stock, par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock, shares authorized (in shares) 1,000,000 1,000,000
Preferred stock, shares issued (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) 7,668,371 7,611,244
Common stock, shares outstanding (in shares) 7,638,812 7,581,685
Treasury stock, shares (in shares) 29,559 29,559
XML 13 R4.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Income (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Net sales $ 100,037 $ 94,343 $ 197,790 $ 165,585
Cost of sales 70,392 70,019 139,444 124,128
Gross profit 29,645 24,324 58,346 41,457
Selling, general & administrative expenses 12,299 12,078 25,306 22,088
Acquisition costs 0 242 0 1,017
Change in fair value of contingent consideration (198) (6,002) (3,051) (6,002)
Loss (gain) on sale of property, plant & equipment 106 (6,197) 107 (6,209)
Operating income 17,042 12,199 29,882 18,559
Interest expense, net 1,089 733 1,958 1,060
Other (income) expenses (20) (157) 56 (209)
Income before income tax expense 15,973 11,623 27,868 17,708
Income tax expense 4,090 2,694 6,246 3,921
Net income $ 11,883 $ 8,929 $ 21,622 $ 13,787
Net income per share:        
Basic (in dollars per share) $ 1.56 $ 1.18 $ 2.84 $ 1.83
Diluted (in dollars per share) $ 1.55 $ 1.17 $ 2.81 $ 1.81
Weighted average common shares outstanding:        
Basic (in shares) 7,625 7,563 7,608 7,554
Diluted (in shares) 7,690 7,608 7,689 7,618
Comprehensive Income        
Net income $ 11,883 $ 8,929 $ 21,622 $ 13,787
Other comprehensive income:        
Foreign currency translation adjustment 41 (1,516) 534 (1,135)
Other comprehensive loss 41 (1,516) 534 (1,135)
Comprehensive income $ 11,924 $ 7,413 $ 22,156 $ 12,652
XML 14 R5.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
Common Stock Outstanding [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, 2021 7,535       30  
Balance at Dec. 31, 2021 $ 75 $ 34,151 $ 160,807 $ 0 $ (587) $ 194,446
Share-based compensation (in shares) 46       0  
Share-based compensation $ 1 691 0 0 $ 0 692
Net share settlement of RSUs (in shares) (20)       0  
Net share settlement of RSUs $ 0 1,299 0 0 $ 0 1,299
Other comprehensive income 0 0 0 381 0 381
Net income 0 0 4,858   0 4,858
Net share settlement of RSUs $ 0 (1,299) 0 0 $ 0 (1,299)
Balance (in shares) at Mar. 31, 2022 7,561       30  
Balance at Mar. 31, 2022 $ 76 33,543 165,665 381 $ (587) 199,078
Balance (in shares) at Dec. 31, 2021 7,535       30  
Balance at Dec. 31, 2021 $ 75 34,151 160,807 0 $ (587) 194,446
Other comprehensive income           (1,135)
Net income           13,787
Balance (in shares) at Jun. 30, 2022 7,566       30  
Balance at Jun. 30, 2022 $ 76 34,342 174,594 (1,135) $ (587) 207,290
Balance (in shares) at Mar. 31, 2022 7,561       30  
Balance at Mar. 31, 2022 $ 76 33,543 165,665 381 $ (587) 199,078
Share-based compensation (in shares) 4       0  
Share-based compensation $ 0 781 0 0 $ 0 781
Exercise of stock options net of shares presented for exercise (in shares) 1       0  
Exercise of stock options net of shares presented for exercise $ 0 21 0 0 $ 0 21
Net share settlement of RSUs (in shares) 0       0  
Net share settlement of RSUs $ 0 3 0 0 $ 0 3
Other comprehensive income 0 0 0 (1,516) 0 (1,516)
Net income 0 0 8,929 0 0 8,929
Net share settlement of RSUs $ 0 (3) 0 0 $ 0 (3)
Balance (in shares) at Jun. 30, 2022 7,566       30  
Balance at Jun. 30, 2022 $ 76 34,342 174,594 (1,135) $ (587) 207,290
Balance (in shares) at Dec. 31, 2022 7,582       30  
Balance at Dec. 31, 2022 $ 76 36,070 202,596 (610) $ (587) 237,545
Share-based compensation (in shares) 49       0  
Share-based compensation $ 0 1,056 0 0 $ 0 1,056
Exercise of stock options net of shares presented for exercise (in shares) 3       0  
Exercise of stock options net of shares presented for exercise $ 0 0 0 0 $ 0 0
Net share settlement of RSUs (in shares) (21)       0  
Net share settlement of RSUs $ 0 (2,413) 0 0 $ 0 (2,413)
Issuance of common stock (in shares) 0       0  
Issuance of common stock $ 0 64 0 0 $ 0 64
Other comprehensive income 0 0 0 493 0 493
Net income 0 0 9,739   0 9,739
Net share settlement of RSUs $ (0) 2,413 (0) (0) $ (0) 2,413
Balance (in shares) at Mar. 31, 2023 7,613       30  
Balance at Mar. 31, 2023 $ 76 34,777 212,335 (117) $ (587) 246,484
Balance (in shares) at Dec. 31, 2022 7,582       30  
Balance at Dec. 31, 2022 $ 76 36,070 202,596 (610) $ (587) 237,545
Other comprehensive income           534
Net income           21,622
Balance (in shares) at Jun. 30, 2023 7,639       30  
Balance at Jun. 30, 2023 $ 76 36,654 224,218 (76) $ (587) 260,285
Balance (in shares) at Mar. 31, 2023 7,613       30  
Balance at Mar. 31, 2023 $ 76 34,777 212,335 (117) $ (587) 246,484
Share-based compensation (in shares) 4       0  
Share-based compensation $ 0 1,197 0 0 $ 0 1,197
Exercise of stock options net of shares presented for exercise (in shares) 22       0  
Exercise of stock options net of shares presented for exercise $ 0 680 0 0 $ 0 680
Other comprehensive income 0 0 0 41 0 41
Net income $ 0 0 11,883 0 $ 0 11,883
Balance (in shares) at Jun. 30, 2023 7,639       30  
Balance at Jun. 30, 2023 $ 76 $ 36,654 $ 224,218 $ (76) $ (587) $ 260,285
XML 15 R6.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Cash Flows
$ in Thousands, € in Millions
6 Months Ended
Jun. 30, 2023
USD ($)
Jun. 30, 2022
USD ($)
Cash flows from operating activities:    
Net income $ 21,622 $ 13,787
Adjustments to reconcile net income to net cash provided by operating activities:    
Depreciation and amortization 5,607 6,333
Loss (gain) on disposal of property, plant & equipment 107 (6,209)
Share-based compensation 2,253 1,473
Deferred income taxes (466) (383)
Change in fair value of contingent consideration 3,051 6,002
Changes in operating assets and liabilities:    
Receivables, net (8,807) (16,363)
Inventories (9,448) (15,212)
Prepaid expenses and other current assets (1,395) (1,320)
Income taxes payable (1,470) (1,103)
Other assets 1,202 (3,004)
Accounts payable 4,862 11,832
Accrued expenses (6,197) 4,597
Deferred revenue (415) 1,365
Non-qualified deferred compensation plan and other liabilities 94 (1,830)
Net cash provided by (used in) operating activities 10,600 (35)
Cash flows from investing activities:    
Additions to property, plant, and equipment (4,951) (8,502)
Proceeds from sale of fixed assets 4 12
Net cash used in investing activities (4,947) (29,143)
Cash flows from financing activities:    
Proceeds from advances on revolving line of credit 9,000 34,000
Payments on revolving line of credit (5,000) (7,000)
Principal payments of long-term debt (2,000) (2,000)
Payment of contingent consideration (5,000) 0
Principal payments on finance lease obligations (32) (32)
Proceeds from exercise of stock options 680 21
Payment of statutory withholdings for restricted stock units vested (2,413) (1,302)
Net cash (used in) provided by financing activities (4,765) 23,687
Effect of foreign currency exchange rates on cash and cash equivalents (48) (50)
Net increase (decrease) in cash and cash equivalents 840 (5,541)
Cash and cash equivalents at beginning of period 4,451 11,117
Cash and cash equivalents at end of period 5,291 5,576
Advant Medical [Member]    
Cash flows from investing activities:    
Acquisition, net of cash acquired 0 (20,768)
DAS Medical [Member]    
Cash flows from investing activities:    
Acquisition, net of cash acquired $ 0 $ 115
XML 16 R7.htm IDEA: XBRL DOCUMENT v3.23.2
Note 1 - Basis of Presentation
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]

(1)

Basis of Presentation

 

The interim condensed consolidated financial statements of UFP Technologies, Inc. (the “Company”) presented herein, have been prepared pursuant to the rules of the Securities and Exchange Commission for quarterly reports on Form 10-Q and do not include all the information and note disclosures required by accounting principles generally accepted in the United States of America. These statements should be read in conjunction with the consolidated financial statements and notes thereto for the year ended December 31, 2022, included in the Company's 2022 Annual Report on Form 10-K, as filed with the Securities and Exchange Commission.

 

The condensed consolidated balance sheets as of June 30, 2023 and December 31, 2022, the condensed consolidated statements of comprehensive income for the three and six months ended June 30, 2023 and 2022, the condensed consolidated statements of stockholders’ equity for the three and six months ended June 30, 2023 and 2022, and the condensed consolidated statements of cash flows for the six months ended June 30, 2023 and 2022 are unaudited but, in the opinion of management, include all adjustments (consisting of normal, recurring adjustments) necessary for a fair presentation of results for these interim periods. The condensed consolidated balance sheet as of December 31, 2022 has been derived from the Company’s annual financial statements that were audited by an independent registered public accounting firm but does not include all of the information and footnotes required for complete annual financial statements.

 

The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management 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 revenues and expenses during the reporting period.

 

The results of operations for the three- and six-month periods ended June 30, 2023 are not necessarily indicative of the results to be expected for the entire fiscal year ending December 31, 2023.

 

Recent Accounting Pronouncements

 

There are no newly issued accounting pronouncements that the Company expects to have a material effect on the financial statements.

XML 17 R8.htm IDEA: XBRL DOCUMENT v3.23.2
Note 2 - Acquisitions and Divestiture
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Mergers, Acquisitions and Dispositions Disclosures [Text Block]

(2)

Acquisition and Divestiture

 

Molded Fiber

 

On  July 26, 2022, pursuant to a share purchase agreement and related agreements, the Company sold its former wholly owned subsidiary Moulded Fibre Technology, Inc. (“MFT”) and related real estate in Iowa to CKF USA INCORPORATED (“CKF”) (a Delaware Corporation) for approximately $31.5 million (including a working capital adjustment of approximately $0.1 million that decreased the total consideration). The net book value of the assets sold was approximately $15.4 million and the Company recorded a net gain on sale of approximately $15.7 million, which was recorded in the year ended  December 31, 2022. $2.6 million of the purchase price is being held in escrow to indemnify CKF against certain claims, losses, and liabilities. The Securities Purchase Agreement contains customary representations, warranties, and covenants customary for transactions of this type. Proceeds from the sale were used to pay down debt on the Company’s revolving credit facility, as well as income tax obligations on the related gain.

 

Advant Medical

 

On March 16, 2022, the Company purchased 100% of the outstanding shares of common stock of Advant Medical, Ltd., Advant Medical Inc. and Advant Medical Costa Rica, Limitada, (together Advant), pursuant to a Stock Purchase Agreement and related agreements, for an aggregate purchase price of €19.0 million in cash along with a working capital adjustment at closing. Total consideration in U.S. Dollars amounted to approximately $21.2 million. The purchase price was subject to additional adjustment based upon Advant’s final working capital at closing. A portion of the purchase price is being held in escrow to indemnify the Company against certain claims, losses, and liabilities. The Stock Purchase Agreement contains customary representations, warranties, and covenants customary for transactions of this type.

 

Founded in 1993, Advant is headquartered in Galway, Ireland, with operations in Costa Rica and partner manufacturing in Mexico. Advant is a developer and manufacturer of Class I, II, and III medical devices and packaging, primarily for catheters and guide wires.

 

The following table summarizes the allocation of consideration paid to the acquisition date fair value of the assets acquired and liabilities assumed based on management’s estimates of fair value (in thousands):

 

Fair value of considerations transferred

       

Cash paid at closing

  $ 23,608  

Other liability

    395  

Cash from Advant

    (2,840 )

Total consideration

  $ 21,163  
         

Purchase price allocation

       

Accounts receivable

  $ 2,299  

Inventory

    2,410  

Other current assets

    213  

Property, plant, and equipment

    5,704  

Customer contracts & relationships

    2,925  

Intellectual property

    2,127  

Non-compete agreement

    259  

Lease right of use assets

    289  

Other assets

    41  

Goodwill

    7,140  

Total identifiable assets

  $ 23,407  

Accounts payable

    (772 )

Accrued expenses

    (668 )

Income taxes

    (66 )

Deferred taxes

    (449 )

Lease liabilities

    (289 )

Net assets acquired

  $ 21,163  

 

Acquisition costs associated with the transaction through the second quarter of 2022 were approximately $779 thousand, of which $749 thousand was charged to expense in the six-months ended June 30, 2022 and $30 thousand was charged to expense in the year ended December 31, 2021. These costs were primarily for legal, investment banking and valuation services, as well as stamp duty filings and are reflected on the face of the income statement.

 

The amount of revenue and earnings of Advant recognized since the acquisition date through the second quarter of 2022 was approximately $6.8 million and $0.7 million, respectively, and is included in the condensed consolidated statement of comprehensive income for the period ended June 30, 2022.

 

Pro-forma statements

 

The following table contains an unaudited pro forma condensed consolidated statement of operations for the six-month period ended June 30, 2022, as if the Advant acquisition had occurred at the beginning of 2022 (in thousands):

 

   

Six-month Period Ended

 
   

June 30, 2022

 
   

(Unaudited)

 

Sales

  $ 169,812  

Operating income

  $ 19,302  

Net income

  $ 14,341  

Earnings per share:

       

Basic

  $ 1.90  

Diluted

  $ 1.88  

 

The above unaudited pro forma information is presented for illustrative purposes only and may not be indicative of the results of operations that would have occurred had the acquisition occurred as presented. In addition, future results may vary significantly from the results reflected in such pro forma information.

XML 18 R9.htm IDEA: XBRL DOCUMENT v3.23.2
Note 3 - Revenue Recognition
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Revenue from Contract with Customer [Text Block]

(3)

Revenue Recognition

 

The Company recognizes revenue when a customer obtains control of a promised good or service. The amount of revenue recognized reflects the consideration that the Company expects to be entitled to in exchange for promised goods or services. The Company recognizes revenue in accordance with the core principles of ASC 606 which include (1) identifying the contract with a customer, (2) identifying separate performance obligations within the contract, (3) determining the transaction price, (4) allocating the transaction price to the performance obligations, and (5) recognizing revenue. The Company recognizes all but an immaterial portion of its product sales upon shipment. The Company recognizes revenue from the sale of tooling and machinery primarily upon customer acceptance. The Company recognizes revenue from engineering services, which are primarily product development services, as the services are performed or as otherwise determined based on the substance of the agreement. The Company recognizes revenue from bill and hold transactions at the time the specified goods are complete and available to the customer. In the ordinary course of business, the Company accepts sales returns from customers for defective goods, such amounts being immaterial. Although only applicable to an insignificant number of transactions, the Company has elected to exclude sales taxes from the transaction price. The Company has elected to account for shipping and handling activities for which the Company is responsible under the terms and conditions of the sale not as performance obligations but rather as fulfillment costs. These activities are required to fulfill the Company’s promise to transfer the good and are expensed when revenue is recognized.

 

Disaggregated Revenue

 

The following table presents the Company’s revenue disaggregated by the major types of goods and services sold to the Company’s customers (in thousands):

 

   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 

Net sales of:

 

2023

   

2022

   

2023

   

2022

 

Products

  $ 98,660     $ 89,672     $ 193,352     $ 159,137  

Tooling and Machinery

    259       2,846       1,553       3,324  

Engineering services

    1,118       1,825       2,885       3,124  

Total net sales

  $ 100,037     $ 94,343     $ 197,790     $ 165,585  

 

Contract balances

 

Timing of revenue recognition may differ from the timing of invoicing to customers. When invoicing occurs prior to revenue recognition, the Company has contract liabilities included within “deferred revenue” on the condensed consolidated balance sheets.

 

The following table presents a roll-forward of contract liabilities activity for the six-month periods ended June 30, 2023 and 2022 (in thousands):

 

   

Contract Liabilities

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Deferred revenue - beginning of period

  $ 4,679     $ 4,247  

Increases due to consideration received from customers

    2,151       3,378  

Revenue recognized

    (2,564 )     (2,013 )

Deferred revenue - end of period

  $ 4,266     $ 5,612

 

 

Revenue recognized during the three-and-six-month periods ended June 30, 2023 from amounts included in deferred revenue at the beginning of the period were approximately $0.1 million and $2.0 million, respectively.

 

Revenue recognized during the three-and-six-month periods ended June 30, 2022 from amounts included in deferred revenue at the beginning of the period were approximately $1.5 million and $1.8 million, respectively.

 

When invoicing occurs after revenue recognition, the Company has contract assets, included within “receivables” on the condensed consolidated balance sheet.

 

The following table presents a roll-forward of contract assets activity for the six-month periods ended June 30, 2023 and 2022 (in thousands):

 

   

Contract Assets

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Unbilled receivables - beginning of period

  $ 270     $ 74  

Increases due to revenue recognized, not invoiced to customers

    2,070       1,937  

Decreases due to customer invoicing

    (2,047 )     (1,784 )

Unbilled receivables - end of period

  $ 293     $ 227  

 

XML 19 R10.htm IDEA: XBRL DOCUMENT v3.23.2
Note 4 - Supplemental Cash Flow Information
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Cash Flow, Supplemental Disclosures [Text Block]

(4)

Supplemental Cash Flow Information

 

Supplemental cash flow information consists of the following (in thousands):

 

   

June 30,

 
   

2023

   

2022

 

Cash paid for:

               

Interest

  $ 1,912     $ 1,038  

Income taxes, net of refunds

    8,112       5,033  
                 

Non-cash investing and financing activities:

               

Capital additions accrued but not yet paid

  $ 218     $ 208  

Operating lease right of use asset

    1,524       289  

Operating lease liabilities

    (1,560 )     (289 )

 

 

XML 20 R11.htm IDEA: XBRL DOCUMENT v3.23.2
Note 5 - Receivables and Allowance for Credit Losses
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Loans, Notes, Trade and Other Receivables Disclosure [Text Block]

(5)

Receivables and Allowance for Credit Losses

 

Receivables consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Accounts receivable–trade

  $ 64,808     $ 55,850  

Less allowance for credit losses

    (718 )     (733 )

Receivables, net

  $ 64,090     $ 55,117  

 

The Company is exposed to credit losses primarily through sales of products and services. The Company’s expected loss allowance methodology for accounts receivable is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' trade accounts receivables. Due to the short-term nature of such receivables, the estimate of the amount of accounts receivable that may not be collected is based on the aging of the accounts receivable balances and the financial condition of customers. Additionally, specific allowance amounts are established to record the appropriate provision for customers that have a higher probability of default. The Company’s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions. Balances are written off when determined to be uncollectible. Estimates based on an assessment of anticipated payment and all other historical, current, and future information that is reasonably available are used to determine the allowance.

 

The following table provides a roll-forward of the allowance for credit losses that is deducted from accounts receivable to present the net amount expected to be collected as of June 30, 2023 and 2022 (in thousands):

 

   

Allowance for Credit
Losses

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Allowance - beginning of period

  $ 733     $ 519  

Provision (Adjustment) for expected credit losses

    (13 )     159  

Amounts written off against the allowance

    (10 )     (14 )

Recoveries

    8       -  

Allowance - end of period

  $ 718     $ 664  

 

 

XML 21 R12.htm IDEA: XBRL DOCUMENT v3.23.2
Note 6 - Fair Value of Financial Instruments
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Fair Value Disclosures [Text Block]

(6)

Fair Value of Financial Instruments

 

Financial instruments recorded at fair value in the consolidated balance sheets, or disclosed at fair value in the footnotes, are categorized based upon the level of judgment associated with the inputs used to measure their fair value. Hierarchical levels defined by ASC 820, Fair Value Measurements and Disclosures, and directly related to the amount of subjectivity associated with inputs to fair valuation of these assets and liabilities, are as follows:

 

Level 1

Valued based on unadjusted, quoted prices in active markets for identical assets or liabilities at the measurement date. An active market for the asset or liability is a market in which transactions for the asset or liability occur with sufficient frequency and volume to provide pricing information on an ongoing basis.

 

Level 2

Valued based on either directly or indirectly observable prices for the asset or liability through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life.

 

Level 3

Valued based on management’s best estimate of what market participants would use in pricing the asset or liability at the measurement date. Consideration is given to the risk inherent in the valuation technique and the risk inherent in the inputs to the model.

 

The following table presents the fair value and hierarchy levels, for financial assets that are measured at fair value on a recurring basis (in thousands):

 

  

June 30, 2023

  

December 31, 2022

 

Level 3

        

Purchase price contingent consideration:

        

Accrued contingent consideration (earn-out)

 $12,619  $14,568 

Present value of non-competition payments

  8,429   10,043 

 

In connection with the acquisition of DAS Medical in 2021, the Company is required to make contingent payments, subject to the entities achieving certain financial performance thresholds. The contingent consideration payments for the DAS Medical acquisition are up to $20 million. The Company paid $5 million during the second quarter of 2023. The fair value of the liability for the contingent consideration payments recognized upon the acquisition as part of the purchase accounting opening balance sheets totaled approximately $9.7 million and was estimated by discounting to present value the probability-weighted contingent payments expected to be made. Assumptions used in this calculation were managements financial forecasts, discount rate and various volatility factors. The ultimate settlement of contingent consideration could deviate from current estimates based on the actual results of these financial measures. This liability is considered to be a Level 3 financial liability that is re-measured each reporting period. The fair value of the liability for the contingent consideration payments recognized at June 30, 2023 totaled approximately $12.6 million.

 

Also in connection with the DAS Medical and Advant Medical acquisitions, the Company has entered into Non-Competition Agreements with the beneficiaries and the Company has agreed to pay additional consideration to the parties to the Non-Competition Agreements, including an aggregate of $10.0 million in payments over the ten years following the closing of the DAS Medical acquisition for the 10-year noncompetition covenants of certain key owners. The present value of the Non-Competition Agreements totaled approximately $8.4 million. This liability is considered to be a Level 3 financial liability that is re-measured each reporting period. The change in fair value of contingent consideration for the acquisition is included in change in fair value of contingent consideration in the condensed consolidated statements of comprehensive income.

 

The Company has financial instruments, such as accounts receivable, accounts payable, and accrued expenses, that are stated at carrying amounts that approximate fair value because of the short maturity of those instruments. The carrying amount of the Company’s long-term debt approximates fair value as the interest rate on the debt approximates the estimated borrowing rate currently available to the Company.

XML 22 R13.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Share-Based Payment Arrangement [Text Block]

(7)

Share-Based Compensation

 

Share-based compensation is measured at the grant date based on the fair value of the award and is recognized as an expense over the requisite service period (generally the vesting period of the equity grant).

 

The Company issues share-based awards through several plans that are described in detail in the notes to the consolidated financial statements for the year ended December 31, 2022. The compensation cost charged against income for those plans is included in selling, general & administrative expenses as follows (in thousands):

 

   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 

Share-based compensation related to:

 

2023

   

2022

   

2023

   

2022

 

Common stock grants

  $ 100     $ 100     $ 200     $ 200  

Stock option grants

    113       60       207       113  

Restricted Stock Unit Awards ("RSUs")

    984       621       1,846       1,160  

Total share-based compensation

  $ 1,197     $ 781     $ 2,253     $ 1,473  

 

The total income tax benefit recognized in the condensed consolidated statements of comprehensive income for share-based compensation arrangements was approximately $752 thousand and $236 thousand for the three-month periods ended June 30, 2023 and 2022, respectively, and approximately $1.6 million and $617 thousand for the six-month periods ended June 30, 2023 and 2022, respectively.

 

Common stock grants

 

The compensation expense for common stock grants during the six-month period ended June 30, 2023, was determined based on an approved fixed dollar amount with the number of shares to be determined on the date of issuance.

 

Stock Option grants

 

The following is a summary of stock option activity under all plans for the six-month period ended June 30, 2023:

 

   

Shares Under

Options

   

Weighted Average

Exercise Price

(per share)

   

Weighted Average Remaining Contractual Life

(in years)

   

Aggregate Intrinsic Value

(in thousands)

 

Outstanding at December 31, 2022

    92,075     $ 39.98                  

Granted

    12,153       131.13                  

Exercised

    (25,740 )     30.67                  

Outstanding at June 30, 2023

    78,488     $ 57.14       6.06     $ 10,730  

Exercisable at June 30, 2023

    66,335     $ 43.59       5.98     $ 9,967  

Vested and expected to vest at June 30, 2023

    78,488     $ 57.14     $ 6.06     $ 10,730  

 

On June 7, 2023, the Company granted options to its directors for the purchase of 4,215 shares of the Company’s common stock at that day’s closing price of $167.98. On February 14, 2023, the Company granted options to its President and Chief Executive Officer for the purchase of 7,935 shares of common stock at that day’s closing price of $111.54. The compensation expense related to these grants was determined as the fair value of the options using the Black-Scholes option pricing model based on the following assumptions:

 

Expected volatility

36.6% / 40.6%

Expected dividends

None

Risk-free interest rate

3.6% / 3.9%

Exercise price

$111.54 / $167.98

Expected term (years)

6.2 / 6.8

Weighted-average grant date fair value

$37.81 / $71.17

 

The stock volatility for each grant is determined based on a review of the experience of the weighted average of historical daily price changes of the Company’s common stock over the expected option term, and the risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for periods correspond‐ing with the expected term of the option. The expected term is estimated based on historical option exercise activity.

 

During the six-month period ended June 30, 2023 and 2022, the total intrinsic value of all options exercised was approximately $3.0 million and $72 thousand, respectively, and the total amount of consideration received by the Company from the exercised options was approximately $789 thousand and $21 thousand, respectively. At its discretion, the Company allows option holders to surrender previously owned common stock in lieu of paying the exercise price and withholding taxes. During the six-month period ended June 30, 2023, 861 shares were surrendered at an average market price of $127.05. Zero shares were surrendered during the same period in 2022.

 

RSUs

 

The following table summarizes information about RSU activity during the six-month period ended June 30, 2023:

 

   

Restricted

Stock Units

   

Weighted Average
Grant Date
Fair Value

 

Outstanding at December 31, 2022

    102,048     $ 56.02  

Awarded

    46,050       113.91  

Shares vested

    (52,126 )     55.17  

Shares forfeited

    (99 )     97.61  

Outstanding at June 30, 2023

    95,873     $ 53.59  

 

At the Company’s discretion, upon vesting, RSU holders are given the option to net-share settle to cover the required minimum withholding tax, and the remaining amount is converted into the equivalent number of common shares and issued to the RSU holder. During the six-month period ended June 30, 2023 and 2022, 20,457 and 19,425 shares were surrendered at an average market price of $117.95 and $67.05, respectively.

 

As of June 30, 2023, the Company had approximately $7.5 million of unrecognized compensation expense that is expected to be recognized over a period of 2.75 years.

XML 23 R14.htm IDEA: XBRL DOCUMENT v3.23.2
Note 8 - Inventories
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Inventory Disclosure [Text Block]

(8)

Inventories

 

Inventories are stated at the lower of cost (determined using the first-in, first-out method) or net realizable value, and consist of the following at the stated dates (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Raw materials

  $ 44,018     $ 42,475  

Work in process

    7,453       4,183  

Finished goods

    11,578       6,878  

Total inventory

  $ 63,049     $ 53,536  
XML 24 R15.htm IDEA: XBRL DOCUMENT v3.23.2
Note 9 - Property, Plant and Equipment
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Property, Plant and Equipment Disclosure [Text Block]

(9)

Property, Plant and Equipment

 

Property, plant, and equipment consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Land and improvements

  $ 4,834     $ 4,811  

Buildings and improvements

    34,528       34,446  

Leasehold improvements

    7,920       5,503  

Machinery & equipment

    53,533       52,233  

Furniture, fixtures, computers & software

    6,544       6,401  

Construction in progress

    8,476       7,272  

Property, plant and equipment

  $ 115,835     $ 110,666  

Accumulated depreciation and amortization

    (55,996 )     (52,594 )

Net property, plant and equipment

  $ 59,839     $ 58,072  

 

XML 25 R16.htm IDEA: XBRL DOCUMENT v3.23.2
Note 10 - Leases
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Lessee, Operating and Finance Leases [Text Block]

(10)

Leases

 

The Company has operating and finance leases for offices, manufacturing plants, vehicles and certain office and manufacturing equipment. Leases with an initial term of 12 months or less are not recorded on the balance sheet. The Company accounts for each separate lease component of a contract and its associated non-lease components as a single lease component, thus causing all fixed payments to be capitalized. Variable lease payment amounts that cannot be determined at the commencement of the lease such as increases in lease payments based on changes in index rates or usage, are not included in the right of use (“ROU”) assets or lease liabilities. These are expensed as incurred and recorded as variable lease expense. The Company determines if an arrangement is a lease at the inception of a contract. Operating and finance lease ROU assets and operating and finance lease liabilities are stated separately in the condensed consolidated balance sheet. 

 

ROU assets represent the Company's right to use an underlying asset during the lease term and lease liabilities represent the Company's obligation to make lease payments pursuant to the lease.  ROU assets and lease liabilities are recognized at commencement date based on the net present value of fixed lease payments over the lease term.  The Company's assumed lease term includes options to extend or terminate the lease when it is reasonably certain that it will exercise that option.  ROU assets are also adjusted for any deferred or accrued rent. As the Company's leases do not typically provide an implicit rate, the Company uses its incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments.

 

ROU assets and lease liabilities consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Operating lease ROU assets

  $ 13,751     $ 12,942  

Finance lease ROU assets

    181       211  

Total ROU assets

  $ 13,932     $ 13,153  

Operating lease liabilities, current

  $ 2,554     $ 2,458  

Finance lease liabilities, current

    60       59  

Total lease liabilities, current

  $ 2,614     $ 2,517  

Operating lease liabilities, long-term

  $ 11,541     $ 10,695  

Finance lease liabilities, long-term

    126       156  

Total lease liabilities, long-term

  $ 11,667     $ 10,851  

 

 

   

Six Months Ended

 
   

June 30,

 
   

($ in thousands)

 
   

2023

   

2022

 

Lease Cost:

               

Finance lease cost:

               

Amortization of right of use assets

  $ 30     $ 30  

Interest on lease liabilities

    2       3  

Operating lease cost

    1,480       1,301  

Variable lease cost

    159       156  

Short-term lease cost

    14       43  

Total lease cost

  $ 1,685     $ 1,533  

 

   

Six Months Ended

 
   

June 30,

 
   

($ in thousands)

 
   

2023

   

2022

 

Cash paid for amounts included in measurement of lease liabilities:

               

Operating cash flows from operating leases

  $ 1,407     $ 1,183  

Financing cash flows from finance leases

    32       32  
                 

Weighted-average remaining lease term (years):

               

Finance

    3.04       4.04  

Operating

    4.81       4.06  

Weighted-average discount rate:

               

Finance

    2.10 %     2.10 %

Operating

    3.43 %     2.76 %

 

The aggregate future lease payments for leases as of June 30, 2023 are as follows (in thousands):

 

   

Finance

   

Operating

 

Remainder of 2023

  $ 32     $ 1,473  

2024

    63       2,962  

2025

    63       2,797  

2026

    29       2,429  

2027

    6       2,064  

Thereafter

    -       3,773  

Total lease payments

    193       15,498  

Less: Interest

    (7 )     (1,403 )

Present value of lease liabilities

  $ 186     $ 14,095  

 

 

XML 26 R17.htm IDEA: XBRL DOCUMENT v3.23.2
Note 11 - Income Per Share
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Earnings Per Share [Text Block]

(11)

Income Per Share

 

Basic income per share is based on the weighted average number of shares of common stock outstanding. Diluted income per share is based upon the weighted average number of common shares outstanding and dilutive common stock equivalent shares outstanding during each period.

 

The weighted average number of shares used to compute basic and diluted net income per share consisted of the following (in thousands):

 

  

Three Months Ended

  

Six Months Ended

 
  

June 30,

  

June 30,

 
  

2023

  

2022

  

2023

  

2022

 

Basic weighted average common shares outstanding

  7,625   7,563   7,608   7,554 

Weighted average common equivalent shares due to restricted stock, stock options and RSUs

  65   45   81   64 

Diluted weighted average common shares outstanding

  7,690   7,608   7,689   7,618 

 

The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options, when the average market price of the common stock is lower than the exercise price of the related stock options during the period. These outstanding stock options are not included in the computation of diluted income per share because the effect would be antidilutive. For the three- and six-month period ended June 30, 2023, the number of stock options excluded from the computation of diluted earnings per share for this reason was 4,218 and 12,153, respectively. For both the three- and six-month period ended June 30, 2022, the number of stock options excluded from the computation of diluted earnings per share for this reason was 9,876.

 

XML 27 R18.htm IDEA: XBRL DOCUMENT v3.23.2
Note 12 - Segment Reporting
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Segment Reporting Disclosure [Text Block]

(12)

Segment Reporting

 

The Company consists of a single operating and reportable segment.

 

Revenues shipped to customers outside of the United States comprised approximately 18.5 % and 17.6 % for the three- and six-month periods ended June 30, 2023, respectively. Revenues shipped to customers outside of the United States comprised approximately 16.9% and 14.8% for the three- and six-month periods ended June 30, 2022, respectively.

 

One customer comprised 24.7% and 22.7% of the Company’s consolidated revenues for the three- and six-month periods ended June 30, 2023, respectively. One customer comprised 20.2% and 17.8% of the Company’s consolidated revenues for the three-and-six month periods ended June 30, 2022, respectively.

 

At June 30, 2023, two customers represented approximately 23.8% of gross accounts receivable. At December 31, 2022, one customer represented approximately 10% of gross accounts receivable.

 

Approximately 18.6% and 17.0% of all long-lived assets are located outside of the United States at June 30, 2023 and December 31, 2022, respectively.

 

The Company’s products are primarily sold to customers within the Medical, Aerospace & Defense, Automotive, and Industrial/Other markets. Net sales by market for the three- and six-month periods ended June 30, 2023 and 2022 are as follows (in thousands):

 

  

Three Months Ended June 30,

  

Six Months Ended June 30,

 
  

2023

  

2022

  

2023

  

2022

 

Market

 

Net Sales

  

%

  

Net Sales

  

%

  

Net Sales

  

%

  

Net Sales

  

%

 
                                 

Medical

 $86,150   86.1% $74,290   78.7% $169,965   85.9% $126,873   76.6%

Aerospace & Defense

  4,234   4.2%  3,751   4.0%  8,451   4.3%  7,507   4.5%

Automotive

  4,096   4.1%  4,351   4.6%  8,443   4.3%  8,702   5.3%

Industrial / Other

  5,557   5.6%  11,951   12.7%  10,931   5.5%  22,503   13.6%

Net Sales

 $100,037   100.0% $94,343   100.0% $197,790   100.0% $165,585   100.0%

 

 

XML 28 R19.htm IDEA: XBRL DOCUMENT v3.23.2
Note 13 - Goodwill and Other Intangible Assets
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Intangible Assets Disclosure [Text Block]

(13)

Goodwill and Other Intangible Assets

 

The change in the carrying amount of goodwill for the six months ended June 30, 2023 was as follows (in thousands):

 

   

Goodwill

 
         

December 31, 2022

  $ 113,028  

Foreign currency translation

    140  

June 30, 2023

  $ 113,168  

 

The carrying values of the Company’s definite lived intangible assets as of June 30, 2023 are as follows (in thousands):

 

   

Intellectual Property /
Tradename & Brand

   

Non-
Compete

   

Customer
List

   

Total

 

Weighted-average amortization period (years)

 

11.9

   

9.3

   

20

         

Gross amount

  $ 7,106     $ 5,502     $ 65,232     $ 77,840  

Accumulated amortization

    (1,028 )     (1,260 )     (9,299 )     (11,587 )

Net balance

  $ 6,078     $ 4,242     $ 55,933     $ 66,253  

 

Amortization expense related to intangible assets was approximately $1.0 million and $1.1 million, respectively, for the three-month periods ended June 30, 2023 and 2022, and $2.1 million and $2.1 million, respectively, for the six-month periods ended June 30, 2023 and 2022. The estimated remaining amortization expense as of June 30, 2023 is as follows (in thousands):

 

Remainder of 2023

  $ 3,308  

2024

    4,401  

2025

    4,401  

2026

    4,399  

2027

    4,397  

2028

    4,350  

Thereafter

    40,997  

Total

  $ 66,253  

 

XML 29 R20.htm IDEA: XBRL DOCUMENT v3.23.2
Note 14 - Other Long-term Liabilities
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Other Liabilities Disclosure [Text Block]

(14)

Other Long-Term Liabilities

 

Other long-term liabilities consist of the following (in thousands):

 

   

June 30,

   

December 31,

 
   

2023

   

2022

 

Accrued contingent consideration (earn-out)

  $ 7,619     $ 9,568  

Present value of non-competition payments

    6,467       8,155  

Other

    500       497  
    $ 14,586     $ 18,220  

 

XML 30 R21.htm IDEA: XBRL DOCUMENT v3.23.2
Note 15 - Income Tax
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Income Tax Disclosure [Text Block]

(15)

Income Taxes

 

The determination of income tax expense in the accompanying unaudited condensed consolidated statements of income is based upon the estimated effective tax rate for the year, adjusted for the impact of any discrete items which are accounted for in the period in which they occur. The Company recorded income tax expense of approximately 25.6% and 23.2% of income before income tax expense for the three-month periods ended June 30, 2023 and 2022, respectively. The Company recorded income tax expense of approximately 22.4% and 22.1% of income before income tax expense for the six-month periods ended June 30, 2023 and 2022, respectively.

XML 31 R22.htm IDEA: XBRL DOCUMENT v3.23.2
Note 16 - Indebtedness
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Debt Disclosure [Text Block]

(16)

Indebtedness

 

On  December 22, 2021, the Company, as the borrower, entered into a secured $130 million Second Amended and Restated Credit Agreement (the “Second Amended and Restated Credit Agreement”) with certain of the Company’s subsidiaries (the “Subsidiary Guarantors”) and Bank of America, N.A., in its capacity as the initial lender, Administrative Agent, Swingline Lender and L/C Issuer, and certain other lenders from time-to-time party thereto. The Second Amended and Restated Credit Agreement amends and restates the Company’s prior credit agreement, originally dated as of  February 1, 2018.

 

The credit facilities under the Second Amended and Restated Credit Agreement consist of a $40 million secured term loan to the Company and a secured revolving credit facility, under which the Company  may borrow up to $90 million. The Second Amended and Restated Credit Agreement matures on  December 21, 2026. The secured term loam requires quarterly principal payments of $1,000,000 commencing on  March 31, 2022. The proceeds of the Second Amended and Restated Credit Agreement  may be used for general corporate purposes, including funding certain permitted acquisitions. The Company’s obligations under the Second Amended and Restated Credit Agreement are guaranteed by Subsidiary Guarantors.

 

The Second Amended and Restated Credit Agreement calls for interest determined by the Bloomberg Short-Term Bank Yield Index rate (“BSBY”) plus a margin that ranges from 1.25% to 2.0% or, at the discretion of the Company, the bank’s prime rate less a margin that ranges from .25% to zero. In both cases the applicable margin is dependent upon Company performance. Under the Second Amended and Restated Credit Agreement, the Company is subject to a minimum fixed-charge coverage financial covenant as well as a maximum total funded debt to EBITDA financial covenant. The Second Amended and Restated Credit Agreement contains other covenants customary for transactions of this type, including restrictions on certain payments, permitted indebtedness, and permitted investments.

 

At  June 30, 2023, the Company had approximately $57 million in borrowings outstanding under the Second Amended and Restated Credit Agreement, which were used as partial consideration for the DAS Medical and Advant acquisitions, and also had approximately $0.7 million in standby letters of credit outstanding, drawable as a financial guarantee on worker’s compensation insurance policies. At  June 30, 2023, the applicable interest rate was approximately 6.4% and the Company was in compliance with all covenants under the Second Amended and Restated Credit Agreement.

 

Long-term debt consists of the following (in thousands):

 

   

June 30, 2023

 

Revolving credit facility

  $ 23,000  

Term loan

    34,000  

Total long-term debt

    57,000  

Current portion

    (4,000 )

Long-term debt, excluding current portion

  $ 53,000  

 

Future maturities of long-term debt at June 30, 2023 are as follows (in thousands):

 

   

Term Loan

   

Revolving credit facility

   

Total

 

Remainder of 2023

  $ 2,000     $ -     $ 2,000  

2024

    4,000       -       4,000  

2025

    4,000       -       4,000  

2026

    24,000       23,000       47,000  
    $ 34,000     $ 23,000     $ 57,000  

 

XML 32 R23.htm IDEA: XBRL DOCUMENT v3.23.2
Item 5 - Other Information
6 Months Ended
Jun. 30, 2023
Notes to Financial Statements  
Issuer Rule 10b5-1, Material Terms [Text Block]

ITEM 5:          OTHER INFORMATION

 

Insider Trading Arrangements and Policies

 

During the second quarter of 2023, none of our directors or executive officers adopted Rule 10b5-1 trading plans and none of our directors or executive officers terminated a Rule 10b5-1 trading plan or adopted or terminated a non-Rule 10b5-1 trading arrangement (as defined in Item 408(c) of regulation S-K)

XML 33 R24.htm IDEA: XBRL DOCUMENT v3.23.2
Note 2 - Acquisitions and Divestiture (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]

Fair value of considerations transferred

       

Cash paid at closing

  $ 23,608  

Other liability

    395  

Cash from Advant

    (2,840 )

Total consideration

  $ 21,163  
         

Purchase price allocation

       

Accounts receivable

  $ 2,299  

Inventory

    2,410  

Other current assets

    213  

Property, plant, and equipment

    5,704  

Customer contracts & relationships

    2,925  

Intellectual property

    2,127  

Non-compete agreement

    259  

Lease right of use assets

    289  

Other assets

    41  

Goodwill

    7,140  

Total identifiable assets

  $ 23,407  

Accounts payable

    (772 )

Accrued expenses

    (668 )

Income taxes

    (66 )

Deferred taxes

    (449 )

Lease liabilities

    (289 )

Net assets acquired

  $ 21,163  
Business Acquisition, Pro Forma Information [Table Text Block]
   

Six-month Period Ended

 
   

June 30, 2022

 
   

(Unaudited)

 

Sales

  $ 169,812  

Operating income

  $ 19,302  

Net income

  $ 14,341  

Earnings per share:

       

Basic

  $ 1.90  

Diluted

  $ 1.88  
XML 34 R25.htm IDEA: XBRL DOCUMENT v3.23.2
Note 3 - Revenue Recognition (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Disaggregation of Revenue [Table Text Block]
   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 

Net sales of:

 

2023

   

2022

   

2023

   

2022

 

Products

  $ 98,660     $ 89,672     $ 193,352     $ 159,137  

Tooling and Machinery

    259       2,846       1,553       3,324  

Engineering services

    1,118       1,825       2,885       3,124  

Total net sales

  $ 100,037     $ 94,343     $ 197,790     $ 165,585  
Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]
   

Contract Liabilities

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Deferred revenue - beginning of period

  $ 4,679     $ 4,247  

Increases due to consideration received from customers

    2,151       3,378  

Revenue recognized

    (2,564 )     (2,013 )

Deferred revenue - end of period

  $ 4,266     $ 5,612

 

   

Contract Assets

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Unbilled receivables - beginning of period

  $ 270     $ 74  

Increases due to revenue recognized, not invoiced to customers

    2,070       1,937  

Decreases due to customer invoicing

    (2,047 )     (1,784 )

Unbilled receivables - end of period

  $ 293     $ 227  
XML 35 R26.htm IDEA: XBRL DOCUMENT v3.23.2
Note 4 - Supplemental Cash Flow Information (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]
   

June 30,

 
   

2023

   

2022

 

Cash paid for:

               

Interest

  $ 1,912     $ 1,038  

Income taxes, net of refunds

    8,112       5,033  
                 

Non-cash investing and financing activities:

               

Capital additions accrued but not yet paid

  $ 218     $ 208  

Operating lease right of use asset

    1,524       289  

Operating lease liabilities

    (1,560 )     (289 )
XML 36 R27.htm IDEA: XBRL DOCUMENT v3.23.2
Note 5 - Receivables and Allowance for Credit Losses (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]
   

June 30,

   

December 31,

 
   

2023

   

2022

 

Accounts receivable–trade

  $ 64,808     $ 55,850  

Less allowance for credit losses

    (718 )     (733 )

Receivables, net

  $ 64,090     $ 55,117  
Accounts Receivable, Allowance for Credit Loss [Table Text Block]
   

Allowance for Credit
Losses

 
   

Six Months Ended
June 30,

 
   

2023

   

2022

 

Allowance - beginning of period

  $ 733     $ 519  

Provision (Adjustment) for expected credit losses

    (13 )     159  

Amounts written off against the allowance

    (10 )     (14 )

Recoveries

    8       -  

Allowance - end of period

  $ 718     $ 664  
XML 37 R28.htm IDEA: XBRL DOCUMENT v3.23.2
Note 6 - Fair Value of Financial Instruments (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Fair Value, Assets Measured on Recurring Basis [Table Text Block]
  

June 30, 2023

  

December 31, 2022

 

Level 3

        

Purchase price contingent consideration:

        

Accrued contingent consideration (earn-out)

 $12,619  $14,568 

Present value of non-competition payments

  8,429   10,043 
XML 38 R29.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Employee Service Share Based Compensation Allocation of Recognized Period Costs, By Award Type [Table Text Block]
   

Three Months Ended

   

Six Months Ended

 
   

June 30,

   

June 30,

 

Share-based compensation related to:

 

2023

   

2022

   

2023

   

2022

 

Common stock grants

  $ 100     $ 100     $ 200     $ 200  

Stock option grants

    113       60       207       113  

Restricted Stock Unit Awards ("RSUs")

    984       621       1,846       1,160  

Total share-based compensation

  $ 1,197     $ 781     $ 2,253     $ 1,473  
Share-Based Payment Arrangement, Option, Activity [Table Text Block]
   

Shares Under

Options

   

Weighted Average

Exercise Price

(per share)

   

Weighted Average Remaining Contractual Life

(in years)

   

Aggregate Intrinsic Value

(in thousands)

 

Outstanding at December 31, 2022

    92,075     $ 39.98                  

Granted

    12,153       131.13                  

Exercised

    (25,740 )     30.67                  

Outstanding at June 30, 2023

    78,488     $ 57.14       6.06     $ 10,730  

Exercisable at June 30, 2023

    66,335     $ 43.59       5.98     $ 9,967  

Vested and expected to vest at June 30, 2023

    78,488     $ 57.14     $ 6.06     $ 10,730  
Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]

Expected volatility

36.6% / 40.6%

Expected dividends

None

Risk-free interest rate

3.6% / 3.9%

Exercise price

$111.54 / $167.98

Expected term (years)

6.2 / 6.8

Weighted-average grant date fair value

$37.81 / $71.17

Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]
   

Restricted

Stock Units

   

Weighted Average
Grant Date
Fair Value

 

Outstanding at December 31, 2022

    102,048     $ 56.02  

Awarded

    46,050       113.91  

Shares vested

    (52,126 )     55.17  

Shares forfeited

    (99 )     97.61  

Outstanding at June 30, 2023

    95,873     $ 53.59  
XML 39 R30.htm IDEA: XBRL DOCUMENT v3.23.2
Note 8 - Inventories (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Inventory, Current [Table Text Block]
   

June 30,

   

December 31,

 
   

2023

   

2022

 

Raw materials

  $ 44,018     $ 42,475  

Work in process

    7,453       4,183  

Finished goods

    11,578       6,878  

Total inventory

  $ 63,049     $ 53,536  
XML 40 R31.htm IDEA: XBRL DOCUMENT v3.23.2
Note 9 - Property, Plant and Equipment (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Property, Plant and Equipment [Table Text Block]
   

June 30,

   

December 31,

 
   

2023

   

2022

 

Land and improvements

  $ 4,834     $ 4,811  

Buildings and improvements

    34,528       34,446  

Leasehold improvements

    7,920       5,503  

Machinery & equipment

    53,533       52,233  

Furniture, fixtures, computers & software

    6,544       6,401  

Construction in progress

    8,476       7,272  

Property, plant and equipment

  $ 115,835     $ 110,666  

Accumulated depreciation and amortization

    (55,996 )     (52,594 )

Net property, plant and equipment

  $ 59,839     $ 58,072  
XML 41 R32.htm IDEA: XBRL DOCUMENT v3.23.2
Note 10 - Leases (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Leases, Right-of-Use Assets and Liabilities [Table Text block]
   

June 30,

   

December 31,

 
   

2023

   

2022

 

Operating lease ROU assets

  $ 13,751     $ 12,942  

Finance lease ROU assets

    181       211  

Total ROU assets

  $ 13,932     $ 13,153  

Operating lease liabilities, current

  $ 2,554     $ 2,458  

Finance lease liabilities, current

    60       59  

Total lease liabilities, current

  $ 2,614     $ 2,517  

Operating lease liabilities, long-term

  $ 11,541     $ 10,695  

Finance lease liabilities, long-term

    126       156  

Total lease liabilities, long-term

  $ 11,667     $ 10,851  
Lease, Cost [Table Text Block]
   

Six Months Ended

 
   

June 30,

 
   

($ in thousands)

 
   

2023

   

2022

 

Lease Cost:

               

Finance lease cost:

               

Amortization of right of use assets

  $ 30     $ 30  

Interest on lease liabilities

    2       3  

Operating lease cost

    1,480       1,301  

Variable lease cost

    159       156  

Short-term lease cost

    14       43  

Total lease cost

  $ 1,685     $ 1,533  
   

Six Months Ended

 
   

June 30,

 
   

($ in thousands)

 
   

2023

   

2022

 

Cash paid for amounts included in measurement of lease liabilities:

               

Operating cash flows from operating leases

  $ 1,407     $ 1,183  

Financing cash flows from finance leases

    32       32  
                 

Weighted-average remaining lease term (years):

               

Finance

    3.04       4.04  

Operating

    4.81       4.06  

Weighted-average discount rate:

               

Finance

    2.10 %     2.10 %

Operating

    3.43 %     2.76 %
Lessee, Operating and Finance Leases, Liability, Maturity [Table Text Block]
   

Finance

   

Operating

 

Remainder of 2023

  $ 32     $ 1,473  

2024

    63       2,962  

2025

    63       2,797  

2026

    29       2,429  

2027

    6       2,064  

Thereafter

    -       3,773  

Total lease payments

    193       15,498  

Less: Interest

    (7 )     (1,403 )

Present value of lease liabilities

  $ 186     $ 14,095  
XML 42 R33.htm IDEA: XBRL DOCUMENT v3.23.2
Note 11 - Income Per Share (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Weighted Average Number of Shares [Table Text Block]
  

Three Months Ended

  

Six Months Ended

 
  

June 30,

  

June 30,

 
  

2023

  

2022

  

2023

  

2022

 

Basic weighted average common shares outstanding

  7,625   7,563   7,608   7,554 

Weighted average common equivalent shares due to restricted stock, stock options and RSUs

  65   45   81   64 

Diluted weighted average common shares outstanding

  7,690   7,608   7,689   7,618 
XML 43 R34.htm IDEA: XBRL DOCUMENT v3.23.2
Note 12 - Segment Reporting (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]
  

Three Months Ended June 30,

  

Six Months Ended June 30,

 
  

2023

  

2022

  

2023

  

2022

 

Market

 

Net Sales

  

%

  

Net Sales

  

%

  

Net Sales

  

%

  

Net Sales

  

%

 
                                 

Medical

 $86,150   86.1% $74,290   78.7% $169,965   85.9% $126,873   76.6%

Aerospace & Defense

  4,234   4.2%  3,751   4.0%  8,451   4.3%  7,507   4.5%

Automotive

  4,096   4.1%  4,351   4.6%  8,443   4.3%  8,702   5.3%

Industrial / Other

  5,557   5.6%  11,951   12.7%  10,931   5.5%  22,503   13.6%

Net Sales

 $100,037   100.0% $94,343   100.0% $197,790   100.0% $165,585   100.0%
XML 44 R35.htm IDEA: XBRL DOCUMENT v3.23.2
Note 13 - Goodwill and Other Intangible Assets (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Goodwill [Table Text Block]
   

Goodwill

 
         

December 31, 2022

  $ 113,028  

Foreign currency translation

    140  

June 30, 2023

  $ 113,168  
Schedule of Finite-Lived Intangible Assets [Table Text Block]
   

Intellectual Property /
Tradename & Brand

   

Non-
Compete

   

Customer
List

   

Total

 

Weighted-average amortization period (years)

 

11.9

   

9.3

   

20

         

Gross amount

  $ 7,106     $ 5,502     $ 65,232     $ 77,840  

Accumulated amortization

    (1,028 )     (1,260 )     (9,299 )     (11,587 )

Net balance

  $ 6,078     $ 4,242     $ 55,933     $ 66,253  
Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]

Remainder of 2023

  $ 3,308  

2024

    4,401  

2025

    4,401  

2026

    4,399  

2027

    4,397  

2028

    4,350  

Thereafter

    40,997  

Total

  $ 66,253  
XML 45 R36.htm IDEA: XBRL DOCUMENT v3.23.2
Note 14 - Other Long-term Liabilities (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Other Noncurrent Liabilities [Table Text Block]
   

June 30,

   

December 31,

 
   

2023

   

2022

 

Accrued contingent consideration (earn-out)

  $ 7,619     $ 9,568  

Present value of non-competition payments

    6,467       8,155  

Other

    500       497  
    $ 14,586     $ 18,220  
XML 46 R37.htm IDEA: XBRL DOCUMENT v3.23.2
Note 16 - Indebtedness (Tables)
6 Months Ended
Jun. 30, 2023
Notes Tables  
Schedule of Debt [Table Text Block]
   

June 30, 2023

 

Revolving credit facility

  $ 23,000  

Term loan

    34,000  

Total long-term debt

    57,000  

Current portion

    (4,000 )

Long-term debt, excluding current portion

  $ 53,000  
Schedule of Maturities of Long-Term Debt [Table Text Block]
   

Term Loan

   

Revolving credit facility

   

Total

 

Remainder of 2023

  $ 2,000     $ -     $ 2,000  

2024

    4,000       -       4,000  

2025

    4,000       -       4,000  

2026

    24,000       23,000       47,000  
    $ 34,000     $ 23,000     $ 57,000  
XML 47 R38.htm IDEA: XBRL DOCUMENT v3.23.2
Note 2 - Acquisitions and Divestiture (Details Textual)
$ in Thousands, € in Millions
3 Months Ended 6 Months Ended 12 Months Ended
Mar. 17, 2022
USD ($)
Mar. 16, 2022
USD ($)
Mar. 16, 2022
EUR (€)
Jun. 30, 2023
USD ($)
Jun. 30, 2022
USD ($)
Jun. 30, 2023
USD ($)
Jun. 30, 2022
USD ($)
Dec. 31, 2022
USD ($)
Dec. 31, 2021
USD ($)
Jul. 26, 2022
USD ($)
Business Combination, Acquisition Related Costs       $ 0 $ 242 $ 0 $ 1,017      
Advant Medical [Member]                    
Business Acquisition, Percentage of Voting Interests Acquired   100.00% 100.00%              
Payments to Acquire Businesses, Net of Cash Acquired, Total     € 19     (0) 20,768      
Payments to Acquire Businesses, Gross $ 23,608 $ 21,200                
DAS Medical [Member]                    
Payments to Acquire Businesses, Net of Cash Acquired, Total           $ (0) (115)      
Business Combination, Acquisition Related Costs         779   749   $ 30  
Contech Medical, Inc [Member]                    
Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual         $ 6,800          
Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual             $ 700      
molded fiber business (“MFT”) and related real estate in Iowa [Member]                    
Disposal Group, Including Discontinued Operation, Consideration                   $ 31,500
Disposal Group, Including Discontinued Operation, Assets, Noncurrent, Total                   15,400
Gain (Loss) on Disposition of Business               $ 15,700    
Disposal Group, Including Discontinued Operation, Consideration, Held in Escrow                   2,600
molded fiber business (“MFT”) and related real estate in Iowa [Member] | Scenario, Adjustment [Member]                    
Disposal Group, Including Discontinued Operation, Consideration                   $ 100
XML 48 R39.htm IDEA: XBRL DOCUMENT v3.23.2
Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details) - USD ($)
$ in Thousands
Mar. 17, 2022
Mar. 16, 2022
Jun. 30, 2023
Dec. 31, 2022
Goodwill     $ 113,168 $ 113,028
Advant Medical [Member]        
Cash paid at closing $ 23,608 $ 21,200    
Other liability 395      
Cash from Advant (2,840)      
Total consideration 21,163      
Accounts receivable 2,299      
Inventory 2,410      
Other current assets 213      
Property, plant, and equipment 5,704      
Lease right of use assets 289      
Other assets 41      
Goodwill 7,140      
Total identifiable assets 23,407      
Accounts payable (772)      
Accrued expenses (668)      
Income taxes (66)      
Deferred taxes (449)      
Lease liabilities (289)      
Net assets acquired 21,163      
Advant Medical [Member] | Customer Contracts and Relationships [Member]        
Finite-Lived Intangibles 2,925      
Advant Medical [Member] | Intellectual Property [Member]        
Finite-Lived Intangibles 2,127      
Advant Medical [Member] | Noncompete Agreements [Member]        
Finite-Lived Intangibles $ 259      
XML 49 R40.htm IDEA: XBRL DOCUMENT v3.23.2
Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details) - Advant Medical [Member]
$ / shares in Units, $ in Thousands
6 Months Ended
Jun. 30, 2022
USD ($)
$ / shares
Sales $ 169,812
Operating income 19,302
Net income $ 14,341
Basic (in dollars per share) | $ / shares $ 1.90
Diluted (in dollars per share) | $ / shares $ 1.88
XML 50 R41.htm IDEA: XBRL DOCUMENT v3.23.2
Note 3 - Revenue Recognition (Details Textual) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Deferred Revenue [Member]        
Contract with Customer, Liability, Revenue Recognized $ 0.1 $ 1.5 $ 2.0 $ 1.8
XML 51 R42.htm IDEA: XBRL DOCUMENT v3.23.2
Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Net sales $ 100,037 $ 94,343 $ 197,790 $ 165,585
Product [Member]        
Net sales 98,660 89,672 193,352 159,137
Tooling and Machinery [Member]        
Net sales 259 2,846 1,553 3,324
Engineering and Development [Member]        
Net sales $ 1,118 $ 1,825 $ 2,885 $ 3,124
XML 52 R43.htm IDEA: XBRL DOCUMENT v3.23.2
Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Deferred revenue $ 4,679 $ 4,247
Increases due to consideration received from customers 2,151 3,378
Revenue recognized (2,564) (2,013)
Deferred revenue 4,266 5,612
Unbilled receivables - beginning of period 270 74
Increases due to revenue recognized, not invoiced to customers 2,070 1,937
Decreases due to customer invoicing (2,047) (1,784)
Unbilled receivables - end of period $ 293 $ 227
XML 53 R44.htm IDEA: XBRL DOCUMENT v3.23.2
Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Cash paid for:    
Interest $ 1,912 $ 1,038
Income taxes, net of refunds 8,112 5,033
Non-cash investing and financing activities:    
Capital additions accrued but not yet paid 218 208
Operating lease right of use asset 1,524 289
Operating lease liabilities $ (1,560) $ (289)
XML 54 R45.htm IDEA: XBRL DOCUMENT v3.23.2
Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Accounts receivable–trade $ 64,808 $ 55,850
Less allowance for credit losses (718) (733)
Receivables, net $ 64,090 $ 55,117
XML 55 R46.htm IDEA: XBRL DOCUMENT v3.23.2
Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Allowance - beginning of period $ 733 $ 519
Provision (Adjustment) for expected credit losses (13) 159
Amounts written off against the allowance (10) (14)
Recoveries 8 0
Allowance - end of period $ 718 $ 664
XML 56 R47.htm IDEA: XBRL DOCUMENT v3.23.2
Note 6 - Fair Value of Financial Instruments (Details Textual) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Mar. 31, 2023
Dec. 31, 2022
Dec. 22, 2021
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Payment for Contingent Consideration Liability, Financing Activities           $ 5,000 $ (0)
Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability       $ 198 $ 6,002 3,051 $ 6,002
Present Value of Non-competition Agreement       8,400   8,400  
Contech Medical, Inc and DAS Medical [Member]              
Business Combination, Consideration Transferred, Liabilities Incurred $ 20,000 $ 20,000          
Payment for Contingent Consideration Liability, Financing Activities       5,000      
Business Combination, Contingent Consideration, Liability, Total       $ 9,700   9,700  
Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability           $ 12,600  
DAS Medical [Member] | Non-Competition Agreements [Member]              
Payments to Acquire Businesses, Gross     $ 10,000        
Business Combination, Agreement Term (Year)     10 years        
XML 57 R48.htm IDEA: XBRL DOCUMENT v3.23.2
Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Present value of non-competition payments $ 8,400  
Fair Value, Recurring [Member] | Fair Value, Inputs, Level 3 [Member]    
Accrued contingent consideration (earn-out) 12,619 $ 14,568
Present value of non-competition payments $ (8,429) $ (10,043)
XML 58 R49.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation (Details Textual) - USD ($)
3 Months Ended 4 Months Ended 6 Months Ended
Jun. 07, 2023
Jun. 30, 2023
Jun. 30, 2022
Jun. 07, 2023
Jun. 30, 2023
Jun. 30, 2022
Share-Based Payment Arrangement, Expense, Tax Benefit   $ 752,000 $ 236,000   $ 1,600 $ 617,000
Proceeds from Stock Options Exercised         680,000 21,000
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount   $ 7,500,000     $ 7,500,000  
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)         2 years 9 months  
Employee and Nonemployee Stock Option [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value         $ 3,000,000.0 72,000,000
Proceeds from Stock Options Exercised         $ 789,000,000 $ 21,000,000
Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation (in shares)         861  
Shares Paid for Tax Withholding for Share Based Compensation Market Price (in dollars per share)         $ 127.05  
Restricted Stock Units (RSUs) [Member]            
Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation (in shares)         20,457 19,425
Shares Paid for Tax Withholding for Share Based Compensation Market Price (in dollars per share)         $ 117.95 $ 67.05
Director [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures (in shares) 4,215          
Share Price (in dollars per share) $ 167.98     $ 167.98    
President and Chief Executive Officer [Member]            
Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures (in shares)       7,935    
Share Price (in dollars per share) $ 111.54     $ 111.54    
XML 59 R50.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation - Compensation Cost (Details) - Selling, General and Administrative Expenses [Member] - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Share-based compensation $ 1,197 $ 781 $ 2,253 $ 1,473
Common Stock [Member]        
Share-based compensation 100 100 200 200
Employee and Nonemployee Stock Option [Member]        
Share-based compensation 113 60 207 113
Restricted Stock Units (RSUs) [Member]        
Share-based compensation $ 984 $ 621 $ 1,846 $ 1,160
XML 60 R51.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details) - Employee and Nonemployee Stock Option [Member]
$ / shares in Units, $ in Thousands
3 Months Ended 6 Months Ended
Mar. 31, 2023
$ / shares
shares
Jun. 30, 2023
USD ($)
$ / shares
shares
Outstanding, shares under options (in shares) | shares 92,075 92,075
Outstanding, weighted average exercise price (in dollars per share) | $ / shares $ 39.98 $ 39.98
Granted, shares under options (in shares) | shares   12,153
Granted (in dollars per share) | $ / shares   $ 131.13
Exercised, shares under options (in shares) | shares   (25,740)
Granted, weighted average exercise price (in dollars per share) | $ / shares $ 30.67  
Outstanding, shares under options (in shares) | shares   78,488
Outstanding, weighted average exercise price (in dollars per share) | $ / shares   $ 57.14
Outstanding, weighted average remaining contractual life (Year)   6 years 21 days
Outstanding, aggregate intrinsic value | $   $ 10,730
Exercisable, shares under options (in shares) | shares   66,335
Exercisable, weighted average exercise price (in dollars per share) | $ / shares   $ 43.59
Exercisable, weighted average remaining contractual life (Year)   5 years 11 months 23 days
Exercisable, aggregate intrinsic value | $   $ 9,967
Vested and expected to vest, shares under options (in shares) | shares   78,488
Vested and expected to vest, weighted average exercise price (in dollars per share) | $ / shares   $ 57.14
Vested and expected to vest, weighted average remaining contractual life (Year)   6 years 21 days
Vested and expected to vest, aggregate intrinsic value | $   $ 10,730
XML 61 R52.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details)
6 Months Ended
Jun. 30, 2023
$ / shares
Minimum [Member]  
Expected volatility 36.60%
Expected dividends 0.00%
Risk-free interest rate 3.60%
Exercise price (in dollars per share) $ 111.54
Expected term (years) (Year) 6 years 2 months 12 days
Weighted-average grant date fair value (in dollars per share) $ 37.81
Maximum [Member]  
Expected volatility 40.60%
Expected dividends 0.00%
Risk-free interest rate 3.90%
Exercise price (in dollars per share) $ 167.98
Expected term (years) (Year) 6 years 9 months 18 days
Weighted-average grant date fair value (in dollars per share) $ 71.17
XML 62 R53.htm IDEA: XBRL DOCUMENT v3.23.2
Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details) - Restricted Stock Units (RSUs) [Member]
6 Months Ended
Jun. 30, 2023
$ / shares
shares
Outstanding, restricted stock units (in shares) | shares 102,048
Outstanding, weighted average award date fair value (in dollars per share) | $ / shares $ 56.02
Awarded, restricted stock units (in shares) | shares 46,050
Awarded, weighted average award date fair value (in dollars per share) | $ / shares $ 113.91
Shares vested, restricted stock units (in shares) | shares (52,126)
Shares vested, weighted average award date fair value (in dollars per share) | $ / shares $ 55.17
Shares forfeited, restricted stock units (in shares) | shares (99)
Shares forfeited, weighted average award date fair value (in dollars per share) | $ / shares $ 97.61
Outstanding, restricted stock units (in shares) | shares 95,873
Outstanding, weighted average award date fair value (in dollars per share) | $ / shares $ 53.59
XML 63 R54.htm IDEA: XBRL DOCUMENT v3.23.2
Note 8 - Inventories - Summary of Inventory (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Raw materials $ 44,018 $ 42,475
Work in process 7,453 4,183
Finished goods 11,578 6,878
Total inventory $ 63,049 $ 53,536
XML 64 R55.htm IDEA: XBRL DOCUMENT v3.23.2
Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Property, plant, and equipment $ 115,835 $ 110,666
Accumulated depreciation and amortization (55,996) (52,594)
Net property, plant and equipment 59,839 58,072
Land and Land Improvements [Member]    
Property, plant, and equipment 4,834 4,811
Building and Building Improvements [Member]    
Property, plant, and equipment 34,528 34,446
Leasehold Improvements [Member]    
Property, plant, and equipment 7,920 5,503
Machinery and Equipment [Member]    
Property, plant, and equipment 53,533 52,233
Furniture, Fixtures, and Computers [Member]    
Property, plant, and equipment 6,544 6,401
Construction in Progress [Member]    
Property, plant, and equipment $ 8,476 $ 7,272
XML 65 R56.htm IDEA: XBRL DOCUMENT v3.23.2
Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Total ROU assets $ 13,932 $ 13,153
Total lease liabilities, current 2,614 2,517
Total lease liabilities, long-term 11,667 10,851
Right of Use Assets [Member]    
Operating lease ROU assets 13,751 12,942
Finance lease ROU assets 181 211
Total ROU assets 13,932 13,153
Lease Liabilities, Current [Member]    
Operating lease liabilities, current 2,554 2,458
Finance lease liabilities, current 60 59
Total lease liabilities, current 2,614 2,517
Lease Liabilities, Noncurrent [Member]    
Operating lease liabilities, long-term 11,541 10,695
Finance lease liabilities, long-term 126 156
Total lease liabilities, long-term $ 11,667 $ 10,851
XML 66 R57.htm IDEA: XBRL DOCUMENT v3.23.2
Note 10 - Leases - Lease Cost (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Lease Cost:    
Amortization of right of use assets $ 30 $ 30
Interest on lease liabilities 2 3
Operating lease cost 1,480 1,301
Variable lease cost 159 156
Short-term lease cost 14 43
Total lease cost 1,685 1,533
Operating cash flows from operating leases 1,407 1,183
Financing cash flows from finance leases $ 32 $ 32
Finance (Year) 3 years 14 days 4 years 14 days
Operating (Year) 4 years 9 months 21 days 4 years 21 days
Finance 2.10% 2.10%
Operating 3.43% 2.76%
XML 67 R58.htm IDEA: XBRL DOCUMENT v3.23.2
Note 10 - Leases - Aggregate Future Lease Payments (Details)
$ in Thousands
Jun. 30, 2023
USD ($)
Remainder of 2023, finance $ 32
Remainder of 2023, operating 1,473
2024, finance 63
2024, operating 2,962
2025, finance 63
2025, operating 2,797
2026, finance 29
2026, operating 2,429
2027, finance 6
2027, operating 2,064
Thereafter, finance 0
Thereafter, operating 3,773
Total lease payments, finance 193
Total lease payments, operating 15,498
Less: Interest, finance (7)
Less: Interest, operating (1,403)
Present value of lease liabilities, finance 186
Present value of lease liabilities, operating $ 14,095
XML 68 R59.htm IDEA: XBRL DOCUMENT v3.23.2
Note 11 - Income Per Share (Details Textual) - shares
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares) 4,218 9,876 12,153 9,876
XML 69 R60.htm IDEA: XBRL DOCUMENT v3.23.2
Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details) - shares
shares in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Basic weighted average common shares outstanding (in shares) 7,625 7,563 7,608 7,554
Weighted average common equivalent shares due to restricted stock, stock options and RSUs (in shares) 65 45 81 64
Diluted weighted average common shares outstanding (in shares) 7,690 7,608 7,689 7,618
XML 70 R61.htm IDEA: XBRL DOCUMENT v3.23.2
Note 12 - Segment Reporting (Details Textual)
3 Months Ended 6 Months Ended 12 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Dec. 31, 2022
Number of Operating Segments 1   1    
Customer Concentration Risk [Member] | Revenue Benchmark [Member]          
Number of Major Customers 1 1 1    
Customer Concentration Risk [Member] | Revenue Benchmark [Member] | One Customer [Member]          
Concentration Risk, Percentage 24.70% 20.20% 22.70% 17.80%  
Customer Concentration Risk [Member] | Revenue Benchmark [Member] | Geographic Distribution, Foreign [Member]          
Concentration Risk, Percentage 18.50% 16.90% 17.60% 14.80%  
Customer Concentration Risk [Member] | Accounts Receivable [Member]          
Number of Major Customers     2   1
Customer Concentration Risk [Member] | Accounts Receivable [Member] | One Customer [Member]          
Concentration Risk, Percentage         10.00%
Customer Concentration Risk [Member] | Accounts Receivable [Member] | Two Customers [Member]          
Concentration Risk, Percentage     23.80%    
Customer Concentration Risk [Member] | Long-Lived Assets [Member] | Geographic Distribution, Foreign [Member]          
Concentration Risk, Percentage     18.60%   17.00%
XML 71 R62.htm IDEA: XBRL DOCUMENT v3.23.2
Note 12 - Segment Reporting - Net Sales by Market (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Net sales $ 100,037 $ 94,343 $ 197,790 $ 165,585
Percentage of concentration risk 100.00% 100.00% 100.00% 100.00%
Medical [Member]        
Net sales $ 86,150 $ 74,290 $ 169,965 $ 126,873
Percentage of concentration risk 86.10% 78.70% 85.90% 76.60%
Aerospace & Defense [Member]        
Net sales $ 4,234 $ 3,751 $ 8,451 $ 7,507
Percentage of concentration risk 4.20% 4.00% 4.30% 4.50%
Automotive [Member]        
Net sales $ 4,096 $ 4,351 $ 8,443 $ 8,702
Percentage of concentration risk 4.10% 4.60% 4.30% 5.30%
industrial or Other [Member]        
Net sales $ 5,557 $ 11,951 $ 10,931 $ 22,503
Percentage of concentration risk 5.60% 12.70% 5.50% 13.60%
XML 72 R63.htm IDEA: XBRL DOCUMENT v3.23.2
Note 13 - Goodwill and Other Intangible Assets (Details Textual) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Amortization of Intangible Assets $ 1.0 $ 1.1 $ 2.1 $ 2.1
XML 73 R64.htm IDEA: XBRL DOCUMENT v3.23.2
Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details)
$ in Thousands
6 Months Ended
Jun. 30, 2023
USD ($)
December 31, 2022 $ 113,028
Foreign currency translation 140
June 30, 2023 $ 113,168
XML 74 R65.htm IDEA: XBRL DOCUMENT v3.23.2
Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Gross amount $ 77,840  
Accumulated amortization (11,587)  
Net balance 66,253 $ 68,361
Intellectual Property/ Tradename and Brand [Member]    
Gross amount 7,106  
Accumulated amortization (1,028)  
Net balance $ 6,078  
Intellectual Property/ Tradename and Brand [Member] | Weighted Average [Member]    
Weighted-average amortization period (years) (Year) 11 years 10 months 24 days  
Noncompete Agreements [Member]    
Gross amount $ 5,502  
Accumulated amortization (1,260)  
Net balance $ 4,242  
Noncompete Agreements [Member] | Weighted Average [Member]    
Weighted-average amortization period (years) (Year) 9 years 3 months 18 days  
Customer Lists [Member]    
Gross amount $ 65,232  
Accumulated amortization (9,299)  
Net balance $ 55,933  
Customer Lists [Member] | Weighted Average [Member]    
Weighted-average amortization period (years) (Year) 20 years  
XML 75 R66.htm IDEA: XBRL DOCUMENT v3.23.2
Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details)
$ in Thousands
Jun. 30, 2023
USD ($)
Remainder of 2023 $ 3,308
2024 4,401
2025 4,401
2026 4,399
2027 4,397
2028 4,350
Thereafter 40,997
Total $ 66,253
XML 76 R67.htm IDEA: XBRL DOCUMENT v3.23.2
Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Accrued contingent consideration (earn-out) $ 7,619 $ 9,568
Present value of non-competition payments 6,467 8,155
Other 500 497
Other Liabilities, Noncurrent $ 14,586 $ 18,220
XML 77 R68.htm IDEA: XBRL DOCUMENT v3.23.2
Note 15 - Income Tax (Details Textual)
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Effective Income Tax Rate Reconciliation, Percent 25.60% 23.20% 22.40% 22.10%
XML 78 R69.htm IDEA: XBRL DOCUMENT v3.23.2
Note 16 - Indebtedness (Details Textual) - USD ($)
Dec. 22, 2021
Jun. 30, 2023
Long-Term Debt   $ 57,000,000
Subsidiary Guarantors [Member] | Second Amended and Restated Credit Agreement [Member]    
Debt Instrument, Face Amount $ 130,000,000  
Long-Term Debt   57,000,000
Letters of Credit Outstanding, Amount   $ 700,000
Debt Instrument, Interest Rate, Stated Percentage   6.40%
Subsidiary Guarantors [Member] | Second Amended and Restated Credit Agreement [Member] | Bloomberg Short-term Bank Yield Index Rate [Member] | Minimum [Member]    
Debt Instrument, Basis Spread on Variable Rate 1.25%  
Subsidiary Guarantors [Member] | Second Amended and Restated Credit Agreement [Member] | Bloomberg Short-term Bank Yield Index Rate [Member] | Maximum [Member]    
Debt Instrument, Basis Spread on Variable Rate 2.00%  
Subsidiary Guarantors [Member] | Second Amended and Restated Credit Agreement [Member] | Prime Rate [Member] | Maximum [Member]    
Debt Instrument, Basis Spread on Variable Rate 0.25%  
Subsidiary Guarantors [Member] | Second Amended and Restated Credit Agreement [Member] | Secured Revolving Credit Facility [Member]    
Line of Credit Facility, Maximum Borrowing Capacity $ 90,000,000  
Debt Instrument, Periodic Payment, Principal 1,000,000  
Subsidiary Guarantors [Member] | Second Amended and Restated Credit Agreement [Member] | Secured Term Loan [Member]    
Debt Instrument, Face Amount $ 40,000,000  
XML 79 R70.htm IDEA: XBRL DOCUMENT v3.23.2
Note 16 - Indebtedness - Long-term Debt (Details) - USD ($)
$ in Millions
Jun. 30, 2023
Dec. 31, 2022
Total long-term debt $ 57  
Current portion (4) $ (4)
Long-term debt, excluding current portion 53 $ 51
Term Loan [Member]    
Total long-term debt 34  
Revolving Credit Facility [Member] | Line of Credit [Member]    
Total long-term debt $ 23  
XML 80 R71.htm IDEA: XBRL DOCUMENT v3.23.2
Note 16 - Indebtedness - Schedule of Maturity (Details)
$ in Thousands
Jun. 30, 2023
USD ($)
Remainder of 2023 $ 2,000
2024 4,000
2025 4,000
2026 47,000
Long-Term Debt 57,000
Line of Credit [Member] | Revolving Credit Facility [Member]  
Remainder of 2023 0
2024 0
2025 0
2026 23,000
Long-Term Debt 23,000
Term Loan [Member]  
Remainder of 2023 2,000
2024 4,000
2025 4,000
2026 24,000
Long-Term Debt $ 34,000
XML 81 ufpt20230630_10q_htm.xml IDEA: XBRL DOCUMENT 0000914156 2023-01-01 2023-06-30 0000914156 2023-08-01 0000914156 2023-06-30 0000914156 2022-12-31 0000914156 2023-04-01 2023-06-30 0000914156 2022-04-01 2022-06-30 0000914156 2022-01-01 2022-06-30 0000914156 ufpt:CommonStockOutstandingMember 2022-12-31 0000914156 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000914156 us-gaap:RetainedEarningsMember 2022-12-31 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0000914156 us-gaap:TreasuryStockCommonMember 2022-12-31 0000914156 ufpt:CommonStockOutstandingMember 2023-01-01 2023-03-31 0000914156 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0000914156 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0000914156 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-03-31 0000914156 2023-01-01 2023-03-31 0000914156 ufpt:CommonStockOutstandingMember 2023-03-31 0000914156 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0000914156 us-gaap:RetainedEarningsMember 2023-03-31 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0000914156 us-gaap:TreasuryStockCommonMember 2023-03-31 0000914156 2023-03-31 0000914156 ufpt:CommonStockOutstandingMember 2023-04-01 2023-06-30 0000914156 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0000914156 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0000914156 us-gaap:TreasuryStockCommonMember 2023-04-01 2023-06-30 0000914156 ufpt:CommonStockOutstandingMember 2023-06-30 0000914156 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0000914156 us-gaap:RetainedEarningsMember 2023-06-30 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0000914156 us-gaap:TreasuryStockCommonMember 2023-06-30 0000914156 ufpt:CommonStockOutstandingMember 2021-12-31 0000914156 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000914156 us-gaap:RetainedEarningsMember 2021-12-31 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0000914156 us-gaap:TreasuryStockCommonMember 2021-12-31 0000914156 2021-12-31 0000914156 ufpt:CommonStockOutstandingMember 2022-01-01 2022-03-31 0000914156 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-03-31 0000914156 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-03-31 0000914156 us-gaap:TreasuryStockCommonMember 2022-01-01 2022-03-31 0000914156 2022-01-01 2022-03-31 0000914156 ufpt:CommonStockOutstandingMember 2022-03-31 0000914156 us-gaap:AdditionalPaidInCapitalMember 2022-03-31 0000914156 us-gaap:RetainedEarningsMember 2022-03-31 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-03-31 0000914156 us-gaap:TreasuryStockCommonMember 2022-03-31 0000914156 2022-03-31 0000914156 ufpt:CommonStockOutstandingMember 2022-04-01 2022-06-30 0000914156 us-gaap:AdditionalPaidInCapitalMember 2022-04-01 2022-06-30 0000914156 us-gaap:RetainedEarningsMember 2022-04-01 2022-06-30 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-01 2022-06-30 0000914156 us-gaap:TreasuryStockCommonMember 2022-04-01 2022-06-30 0000914156 ufpt:CommonStockOutstandingMember 2022-06-30 0000914156 us-gaap:AdditionalPaidInCapitalMember 2022-06-30 0000914156 us-gaap:RetainedEarningsMember 2022-06-30 0000914156 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-06-30 0000914156 us-gaap:TreasuryStockCommonMember 2022-06-30 0000914156 2022-06-30 0000914156 ufpt:AdvantMedicalMember 2023-01-01 2023-06-30 0000914156 ufpt:AdvantMedicalMember 2022-01-01 2022-06-30 0000914156 ufpt:DasMedicalMember 2023-01-01 2023-06-30 0000914156 ufpt:DasMedicalMember 2022-01-01 2022-06-30 0000914156 ufpt:MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember 2022-07-26 0000914156 us-gaap:ScenarioAdjustmentMember ufpt:MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember 2022-07-26 0000914156 ufpt:MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember 2022-01-01 2022-12-31 0000914156 ufpt:AdvantMedicalMember 2022-03-16 0000914156 ufpt:AdvantMedicalMember 2022-03-16 2022-03-16 0000914156 ufpt:AdvantMedicalMember 2022-03-17 2022-03-17 0000914156 ufpt:AdvantMedicalMember 2022-03-17 0000914156 ufpt:AdvantMedicalMember ufpt:CustomerContractsAndRelationshipsMember 2022-03-17 0000914156 ufpt:AdvantMedicalMember us-gaap:IntellectualPropertyMember 2022-03-17 0000914156 ufpt:AdvantMedicalMember us-gaap:NoncompeteAgreementsMember 2022-03-17 0000914156 ufpt:DasMedicalMember 2022-04-01 2022-06-30 0000914156 ufpt:DasMedicalMember 2021-01-01 2021-12-31 0000914156 ufpt:ContechMedicalIncMember 2022-04-01 2022-06-30 0000914156 ufpt:ContechMedicalIncMember 2022-01-01 2022-06-30 0000914156 us-gaap:ProductMember 2023-04-01 2023-06-30 0000914156 us-gaap:ProductMember 2022-04-01 2022-06-30 0000914156 us-gaap:ProductMember 2023-01-01 2023-06-30 0000914156 us-gaap:ProductMember 2022-01-01 2022-06-30 0000914156 ufpt:ToolingAndMachineryMember 2023-04-01 2023-06-30 0000914156 ufpt:ToolingAndMachineryMember 2022-04-01 2022-06-30 0000914156 ufpt:ToolingAndMachineryMember 2023-01-01 2023-06-30 0000914156 ufpt:ToolingAndMachineryMember 2022-01-01 2022-06-30 0000914156 ufpt:EngineeringAndDevelopmentMember 2023-04-01 2023-06-30 0000914156 ufpt:EngineeringAndDevelopmentMember 2022-04-01 2022-06-30 0000914156 ufpt:EngineeringAndDevelopmentMember 2023-01-01 2023-06-30 0000914156 ufpt:EngineeringAndDevelopmentMember 2022-01-01 2022-06-30 0000914156 ufpt:DeferredRevenueMember 2023-04-01 2023-06-30 0000914156 ufpt:DeferredRevenueMember 2023-01-01 2023-06-30 0000914156 ufpt:DeferredRevenueMember 2022-04-01 2022-06-30 0000914156 ufpt:DeferredRevenueMember 2022-01-01 2022-06-30 0000914156 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2023-06-30 0000914156 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2022-12-31 0000914156 ufpt:ContechMedicalIncAndDasMedicalMember 2022-12-31 2022-12-31 0000914156 ufpt:ContechMedicalIncAndDasMedicalMember 2023-03-31 2023-03-31 0000914156 ufpt:ContechMedicalIncAndDasMedicalMember 2023-04-01 2023-06-30 0000914156 ufpt:ContechMedicalIncAndDasMedicalMember 2023-06-30 0000914156 ufpt:ContechMedicalIncAndDasMedicalMember 2023-01-01 2023-06-30 0000914156 ufpt:DasMedicalMember ufpt:NoncompetitionAgreementsMember 2021-12-22 2021-12-22 0000914156 us-gaap:CommonStockMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000914156 us-gaap:CommonStockMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000914156 us-gaap:CommonStockMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000914156 us-gaap:CommonStockMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000914156 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000914156 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000914156 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000914156 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember 2022-12-31 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember 2023-01-01 2023-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember 2023-01-01 2023-03-31 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember 2023-06-30 0000914156 srt:DirectorMember 2023-06-07 2023-06-07 0000914156 srt:DirectorMember 2023-06-07 0000914156 ufpt:PresidentAndChiefExecutiveOfficerMember 2023-02-14 2023-06-07 0000914156 ufpt:PresidentAndChiefExecutiveOfficerMember 2023-06-07 0000914156 srt:MinimumMember 2023-01-01 2023-06-30 0000914156 srt:MaximumMember 2023-01-01 2023-06-30 0000914156 srt:MinimumMember 2023-06-30 0000914156 srt:MaximumMember 2023-06-30 0000914156 ufpt:EmployeeAndNonemployeeStockOptionMember 2022-01-01 2022-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember 2022-12-31 0000914156 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember 2023-06-30 0000914156 us-gaap:RestrictedStockUnitsRSUMember 2022-01-01 2022-06-30 0000914156 us-gaap:LandAndLandImprovementsMember 2023-06-30 0000914156 us-gaap:LandAndLandImprovementsMember 2022-12-31 0000914156 us-gaap:BuildingAndBuildingImprovementsMember 2023-06-30 0000914156 us-gaap:BuildingAndBuildingImprovementsMember 2022-12-31 0000914156 us-gaap:LeaseholdImprovementsMember 2023-06-30 0000914156 us-gaap:LeaseholdImprovementsMember 2022-12-31 0000914156 us-gaap:MachineryAndEquipmentMember 2023-06-30 0000914156 us-gaap:MachineryAndEquipmentMember 2022-12-31 0000914156 ufpt:FurnitureFixturesAndComputersMember 2023-06-30 0000914156 ufpt:FurnitureFixturesAndComputersMember 2022-12-31 0000914156 us-gaap:ConstructionInProgressMember 2023-06-30 0000914156 us-gaap:ConstructionInProgressMember 2022-12-31 0000914156 ufpt:RightOfUseAssetsMember 2023-06-30 0000914156 ufpt:RightOfUseAssetsMember 2022-12-31 0000914156 ufpt:LeaseLiabilitiesCurrentMember 2023-06-30 0000914156 ufpt:LeaseLiabilitiesCurrentMember 2022-12-31 0000914156 ufpt:LeaseLiabilitiesNoncurrentMember 2023-06-30 0000914156 ufpt:LeaseLiabilitiesNoncurrentMember 2022-12-31 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:GeographicDistributionForeignMember 2023-04-01 2023-06-30 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:GeographicDistributionForeignMember 2023-01-01 2023-06-30 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:GeographicDistributionForeignMember 2022-04-01 2022-06-30 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember us-gaap:GeographicDistributionForeignMember 2022-01-01 2022-06-30 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-04-01 2023-06-30 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000914156 ufpt:OneCustomerMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-04-01 2023-06-30 0000914156 ufpt:OneCustomerMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000914156 ufpt:OneCustomerMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-04-01 2022-06-30 0000914156 ufpt:OneCustomerMember us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-06-30 0000914156 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000914156 ufpt:TwoCustomersMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2023-01-01 2023-06-30 0000914156 us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000914156 us-gaap:SalesRevenueNetMember us-gaap:CustomerConcentrationRiskMember 2022-04-01 2022-06-30 0000914156 ufpt:OneCustomerMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2022-01-01 2022-12-31 0000914156 ufpt:LonglivedAssetsMember us-gaap:CustomerConcentrationRiskMember us-gaap:GeographicDistributionForeignMember 2023-01-01 2023-06-30 0000914156 ufpt:LonglivedAssetsMember us-gaap:CustomerConcentrationRiskMember us-gaap:GeographicDistributionForeignMember 2022-01-01 2022-12-31 0000914156 ufpt:MedicalMember 2023-04-01 2023-06-30 0000914156 ufpt:MedicalMember 2022-04-01 2022-06-30 0000914156 ufpt:MedicalMember 2023-01-01 2023-06-30 0000914156 ufpt:MedicalMember 2022-01-01 2022-06-30 0000914156 ufpt:AerospaceDefenseMember 2023-04-01 2023-06-30 0000914156 ufpt:AerospaceDefenseMember 2022-04-01 2022-06-30 0000914156 ufpt:AerospaceDefenseMember 2023-01-01 2023-06-30 0000914156 ufpt:AerospaceDefenseMember 2022-01-01 2022-06-30 0000914156 ufpt:AutomotiveMember 2023-04-01 2023-06-30 0000914156 ufpt:AutomotiveMember 2022-04-01 2022-06-30 0000914156 ufpt:AutomotiveMember 2023-01-01 2023-06-30 0000914156 ufpt:AutomotiveMember 2022-01-01 2022-06-30 0000914156 ufpt:IndustrialOrOtherMember 2023-04-01 2023-06-30 0000914156 ufpt:IndustrialOrOtherMember 2022-04-01 2022-06-30 0000914156 ufpt:IndustrialOrOtherMember 2023-01-01 2023-06-30 0000914156 ufpt:IndustrialOrOtherMember 2022-01-01 2022-06-30 0000914156 srt:WeightedAverageMember ufpt:IntellectualPropertyTradenameAndBrandMember 2023-06-30 0000914156 srt:WeightedAverageMember us-gaap:NoncompeteAgreementsMember 2023-06-30 0000914156 srt:WeightedAverageMember us-gaap:CustomerListsMember 2023-06-30 0000914156 ufpt:IntellectualPropertyTradenameAndBrandMember 2023-06-30 0000914156 us-gaap:NoncompeteAgreementsMember 2023-06-30 0000914156 us-gaap:CustomerListsMember 2023-06-30 0000914156 ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember 2021-12-22 0000914156 ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember ufpt:SecuredTermLoanMember 2021-12-22 0000914156 ufpt:SecuredRevolvingCreditFacilityMember ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember 2021-12-22 0000914156 ufpt:SecuredRevolvingCreditFacilityMember ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember 2021-12-22 2021-12-22 0000914156 srt:MinimumMember ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember ufpt:BloombergShorttermBankYieldIndexRateMember 2021-12-22 2021-12-22 0000914156 srt:MaximumMember ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember ufpt:BloombergShorttermBankYieldIndexRateMember 2021-12-22 2021-12-22 0000914156 srt:MaximumMember ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember us-gaap:PrimeRateMember 2021-12-22 2021-12-22 0000914156 ufpt:SecondAmendedAndRestatedCreditAgreementMember ufpt:SubsidiaryGuarantorsMember 2023-06-30 0000914156 us-gaap:RevolvingCreditFacilityMember us-gaap:LineOfCreditMember 2023-06-30 0000914156 ufpt:TermLoanMember 2023-06-30 shares iso4217:USD iso4217:USD shares pure iso4217:EUR utr:Y 0000914156 UFP TECHNOLOGIES INC false --12-31 Q2 2023 0.01 0.01 1000000 1000000 0 0 0.01 0.01 20000000 20000000 7668371 7638812 7611244 7581685 29559 29559 19000000.0 20000000 P10Y 0.366 0.406 0 0 0.036 0.039 111.54 167.98 P6Y2M12D P6Y9M18D 37.81 71.17 9876 1 1 1 1 0.0025 10-Q true 2023-06-30 false 001-12648 DE 04-2314970 100 Hale Street Newburyport MA 01950 978 352-2200 Common Stock UFPT NASDAQ Yes Yes Accelerated Filer false false false 7638812 5291000 4451000 64090000 55117000 63049000 53536000 4641000 3242000 137071000 116346000 59839000 58072000 113168000 113028000 66253000 68361000 4945000 4148000 13932000 13153000 1926000 1448000 858000 3636000 397992000 378192000 25125000 19961000 16772000 23122000 4266000 4679000 2614000 2517000 216000 1682000 4000000 4000000 52993000 55961000 53000000 51000000 458000 448000 5003000 4167000 11667000 10851000 14586000 18220000 137707000 140647000 0 0 76000 76000 36654000 36070000 224218000 202596000 -76000 -610000 587000 587000 260285000 237545000 397992000 378192000 100037000 94343000 197790000 165585000 70392000 70019000 139444000 124128000 29645000 24324000 58346000 41457000 12299000 12078000 25306000 22088000 0 242000 0 1017000 198000 6002000 3051000 6002000 -106000 6197000 -107000 6209000 17042000 12199000 29882000 18559000 1089000 733000 1958000 1060000 20000 157000 -56000 209000 15973000 11623000 27868000 17708000 4090000 2694000 6246000 3921000 11883000 8929000 21622000 13787000 1.56 1.18 2.84 1.83 1.55 1.17 2.81 1.81 7625000 7563000 7608000 7554000 7690000 7608000 7689000 7618000 11883000 8929000 21622000 13787000 41000 -1516000 534000 -1135000 41000 -1516000 534000 -1135000 11924000 7413000 22156000 12652000 7582000 76000 36070000 202596000 -610000 30000 -587000 237545000 49000 0 1056000 0 0 0 0 1056000 3000 0 0 0 0 0 0 0 21000 -0 2413000 -0 -0 -0 -0 2413000 0 0 64000 0 0 0 0 64000 0 0 0 493000 0 493000 0 0 9739000 0 9739000 7613000 76000 34777000 212335000 -117000 30000 -587000 246484000 4000 0 1197000 0 0 0 0 1197000 22000 0 680000 0 0 0 0 680000 0 0 0 41000 0 41000 0 0 11883000 0 0 11883000 7639000 76000 36654000 224218000 -76000 30000 -587000 260285000 7535000 75000 34151000 160807000 0 30000 -587000 194446000 46000 1000 691000 0 0 0 0 692000 20000 0 -1299000 0 0 -0 0 -1299000 0 0 0 381000 0 381000 0 0 4858000 0 4858000 7561000 76000 33543000 165665000 381000 30000 -587000 199078000 4000 0 781000 0 0 0 0 781000 1000 0 21000 0 0 0 0 21000 -0 0 -3000 0 0 -0 0 -3000 0 0 0 -1516000 0 -1516000 0 0 8929000 0 0 8929000 7566000 76000 34342000 174594000 -1135000 30000 -587000 207290000 21622000 13787000 5607000 6333000 -107000 6209000 2253000 1473000 -466000 -383000 3051000 6002000 8807000 16363000 9448000 15212000 1395000 1320000 -1470000 -1103000 -1202000 3004000 4862000 11832000 -6197000 4597000 -415000 1365000 94000 -1830000 10600000 -35000 4951000 8502000 -0 20768000 -0 -115000 4000 12000 -4947000 -29143000 9000000 34000000 5000000 7000000 2000000 2000000 5000000 -0 32000 32000 680000 21000 2413000 1302000 -4765000 23687000 -48000 -50000 840000 -5541000 4451000 11117000 5291000 5576000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">1</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Basis of Presentation</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The interim condensed consolidated financial statements of UFP Technologies, Inc. (the “Company”) presented herein, have been prepared pursuant to the rules of the Securities and Exchange Commission for quarterly reports on Form <em style="font: inherit;">10</em>-Q and do <em style="font: inherit;">not</em> include all the information and note disclosures required by accounting principles generally accepted in the United States of America. These statements should be read in conjunction with the consolidated financial statements and notes thereto for the year ended <em style="font: inherit;"> December 31, 2022, </em>included in the Company's <em style="font: inherit;">2022</em> Annual Report on Form <em style="font: inherit;">10</em>-K, as filed 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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The condensed consolidated balance sheets as of <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;"> December 31, 2022, </em>the condensed consolidated statements of comprehensive income for the <em style="font: inherit;">three</em> and <em style="font: inherit;">six</em> months ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> the condensed consolidated statements of stockholders’ equity for the <em style="font: inherit;">three</em> and <em style="font: inherit;">six</em> months ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> and the condensed consolidated statements of cash flows for the <em style="font: inherit;">six</em> months ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022</em> are unaudited but, in the opinion of management, include all adjustments (consisting of normal, recurring adjustments) necessary for a fair presentation of results for these interim periods. The condensed consolidated balance sheet as of <em style="font: inherit;"> December 31, 2022 </em>has been derived from the Company’s annual financial statements that were audited by an independent registered public accounting firm but does <em style="font: inherit;">not</em> include all of the information and footnotes required for complete annual financial statements.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The preparation of financial statements in conformity with accounting principles generally accepted in the United States of America requires management 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 revenues and expenses during the reporting period.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The results of operations for the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>are <em style="font: inherit;">not</em> necessarily indicative of the results to be expected for the entire fiscal year ending <em style="font: inherit;"> December </em><em style="font: inherit;">31,</em> <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;text-align:justify;margin:0pt 0pt 0pt 27pt;"><i>Recent Accounting Pronouncements</i></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;text-align:justify;margin:0pt 0pt 0pt 28pt;">There are <em style="font: inherit;">no</em> newly issued accounting pronouncements that the Company expects to have a material effect on the financial statements.</p> <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">2</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Acquisition and Divestiture</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"><span style="text-decoration: underline; ">Molded Fiber</span></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;text-align:justify;margin:0pt 0pt 0pt 27pt;">On <em style="font: inherit;"> July 26, 2022, </em>pursuant to a share purchase agreement and related agreements, the Company sold its former wholly owned subsidiary Moulded Fibre Technology, Inc. (“MFT”) and related real estate in Iowa to CKF USA INCORPORATED (“CKF”) (a Delaware Corporation) for approximately $31.5 million (including a working capital adjustment of approximately $0.1 million that decreased the total consideration). The net book value of the assets sold was approximately $15.4 million and the Company recorded a net gain on sale of approximately $15.7 million, which was recorded in the year ended <em style="font: inherit;"> December 31, 2022</em><i>.</i> $2.6 million of the purchase price is being held in escrow to indemnify CKF against certain claims, losses, and liabilities. The Securities Purchase Agreement contains customary representations, warranties, and covenants customary for transactions of this type. Proceeds from the sale were used to pay down debt on the Company’s revolving credit facility, as well as income tax obligations on the related gain.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;"><span style="text-decoration: underline; ">Advant Medical</span></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;text-align:justify;margin:0pt 0pt 0pt 27pt;">On <em style="font: inherit;"> March 16, 2022, </em>the Company purchased 100% of the outstanding shares of common stock of Advant Medical, Ltd., Advant Medical Inc. and Advant Medical Costa Rica, Limitada, (together Advant), pursuant to a Stock Purchase Agreement and related agreements, for an aggregate purchase price of <span style="-sec-ix-hidden:c101287998">€19.0</span> million in cash along with a working capital adjustment at closing. Total consideration in U.S. Dollars amounted to approximately $21.2 million. The purchase price was subject to additional adjustment based upon Advant’s final working capital at closing. A portion of the purchase price is being held in escrow to indemnify the Company against certain claims, losses, and liabilities. The Stock Purchase Agreement contains customary representations, warranties, and covenants customary for transactions of this type.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">Founded in <em style="font: inherit;">1993,</em> Advant is headquartered in Galway, Ireland, with operations in Costa Rica and partner manufacturing in Mexico. Advant is a developer and manufacturer of Class I, II, and III medical devices and packaging, primarily for catheters and guide wires.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table summarizes the allocation of consideration paid to the acquisition date fair value of the assets acquired and liabilities assumed based on management’s estimates of fair value (in thousands):</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: 28pt;"> <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;">Fair value of considerations transferred</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: 16%;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash paid at closing</p> </td> <td style="width: 1%; font-family: &quot;Times New 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;">23,608</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">395</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash from Advant</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,840</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Total consideration</b></p> </td> <td style="width: 1%; font-family: &quot;Times New 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;"><b>$</b></td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><b>21,163</b></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="width: 81%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Purchase price allocation</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: 16%;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; 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,299</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Inventory</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,410</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: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">213</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Property, plant, 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,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(255, 255, 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 0pt 0pt 9pt;">Customer contracts &amp; 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;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,925</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Intellectual property</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,127</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Non-compete agreement</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">259</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Lease right of use 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">289</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: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 16%; 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);">7,140</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); margin-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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total identifiable 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;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,407</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: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(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; width: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(668</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Income taxes</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(66</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Deferred taxes</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(449</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Lease 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: 16%; 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);">(289</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Net assets acquired</b></p> </td> <td style="width: 1%; font-family: &quot;Times New 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);"><b>$</b></td> <td style="width: 16%; 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);"><b>21,163</b></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); 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;text-align:justify;margin:0pt 0pt 0pt 27pt;">Acquisition costs associated with the transaction through the <em style="font: inherit;">second</em> quarter of <em style="font: inherit;">2022</em> were approximately $779 thousand, of which $749 thousand was charged to expense in the <em style="font: inherit;">six</em>-months ended <em style="font: inherit;"> June 30, 2022 </em>and $30 thousand was charged to expense in the year ended <em style="font: inherit;"> December 31, 2021. </em>These costs were primarily for legal, investment banking and valuation services, as well as stamp duty filings and are reflected on the face of the income statement.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The amount of revenue and earnings of Advant recognized since the acquisition date through the <em style="font: inherit;">second</em> quarter of <em style="font: inherit;">2022</em> was approximately $6.8 million and $0.7 million, respectively, and is included in the condensed consolidated statement of comprehensive income for the period ended <em style="font: inherit;"> June 30, 2022.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;"><span style="text-decoration: underline; ">Pro-forma statements</span></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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table contains an unaudited pro forma condensed consolidated statement of operations for the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 2022, </em>as if the Advant acquisition had occurred at the beginning of <em style="font: inherit;">2022</em> (in thousands):</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: 28pt;"> <tbody> <tr 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: 81%;"> </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; 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><b>Six-month Period Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> </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; 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><b>June 30, 2022</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> </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;">(Unaudited)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Sales</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">169,812</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating income</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">19,302</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">14,341</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Earnings per share:</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: 16%;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1.90</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1.88</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The above unaudited pro forma information is presented for illustrative purposes only and <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be indicative of the results of operations that would have occurred had the acquisition occurred as presented. In addition, future results <em style="font: inherit;"> may </em>vary significantly from the results reflected in such pro forma information.</p> 31500000 100000 15400000 15700000 2600000 1 21200000 <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: 28pt;"> <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;">Fair value of considerations transferred</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: 16%;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash paid at closing</p> </td> <td style="width: 1%; font-family: &quot;Times New 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;">23,608</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">395</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Cash from Advant</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,840</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Total consideration</b></p> </td> <td style="width: 1%; font-family: &quot;Times New 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;"><b>$</b></td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"><b>21,163</b></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="width: 81%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Purchase price allocation</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: 16%;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; 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,299</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Inventory</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,410</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: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">213</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Property, plant, 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5,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(255, 255, 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 0pt 0pt 9pt;">Customer contracts &amp; 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;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,925</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Intellectual property</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,127</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Non-compete agreement</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">259</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Lease right of use 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">289</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: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">41</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 16%; 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);">7,140</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); margin-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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total identifiable 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;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">23,407</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: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(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; width: 81%;"> <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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(668</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Income taxes</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(66</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Deferred taxes</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(449</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Lease 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: 16%; 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);">(289</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Net assets acquired</b></p> </td> <td style="width: 1%; font-family: &quot;Times New 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);"><b>$</b></td> <td style="width: 16%; 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);"><b>21,163</b></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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 23608000 395000 2840000 21163000 2299000 2410000 213000 5704000 2925000 2127000 259000 289000 41000 7140000 23407000 772000 668000 66000 449000 289000 21163000 779000 749000 30000 6800000 700000 <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: 28pt;"> <tbody> <tr 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: 81%;"> </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; 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><b>Six-month Period Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> </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; 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><b>June 30, 2022</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 81%;"> </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;">(Unaudited)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Sales</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">169,812</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating income</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">19,302</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">14,341</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Earnings per share:</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: 16%;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1.90</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1.88</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> 169812000 19302000 14341000 1.90 1.88 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">3</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Revenue Recognition</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company recognizes revenue when a customer obtains control of a promised good or service. The amount of revenue recognized reflects the consideration that the Company expects to be entitled to in exchange for promised goods or services. The Company recognizes revenue in accordance with the core principles of ASC <em style="font: inherit;">606</em> which include (<em style="font: inherit;">1</em>) identifying the contract with a customer, (<em style="font: inherit;">2</em>) identifying separate performance obligations within the contract, (<em style="font: inherit;">3</em>) determining the transaction price, (<em style="font: inherit;">4</em>) allocating the transaction price to the performance obligations, and (<em style="font: inherit;">5</em>) recognizing revenue. The Company recognizes all but an immaterial portion of its product sales upon shipment. The Company recognizes revenue from the sale of tooling and machinery primarily upon customer acceptance. The Company recognizes revenue from engineering services, which are primarily product development services, as the services are performed or as otherwise determined based on the substance of the agreement. The Company recognizes revenue from bill and hold transactions at the time the specified goods are complete and available to the customer. In the ordinary course of business, the Company accepts sales returns from customers for defective goods, such amounts being immaterial. Although only applicable to an insignificant number of transactions, the Company has elected to exclude sales taxes from the transaction price. The Company has elected to account for shipping and handling activities for which the Company is responsible under the terms and conditions of the sale <em style="font: inherit;">not</em> as performance obligations but rather as fulfillment costs. These activities are required to fulfill the Company’s promise to transfer the good and are expensed when revenue is recognized.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;"><i>Disaggregated Revenue</i></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;text-align:justify;margin:0pt 0pt 0pt 28pt;">The following table presents the Company’s revenue disaggregated by the major types of goods and services sold to the Company’s customers (in thousands):</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: 28pt;"> <tbody> <tr 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: 36%;"> </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; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Three Months Ended</b></b></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 colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 36%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net sales of:</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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">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; margin-left: 0pt;">$</td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">98,660</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">89,672</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">193,352</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">159,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(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Tooling and Machinery</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">259</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,846</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,553</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">3,324</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Engineering services</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,118</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,825</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">2,885</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">3,124</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total net sales</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">100,037</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">94,343</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">197,790</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">165,585</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); 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;text-align:justify;margin:0pt 0pt 0pt 28pt;"><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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">Timing of revenue recognition <em style="font: inherit;"> may </em>differ from the timing of invoicing to customers. When invoicing occurs prior to revenue recognition, the Company has contract liabilities included within “deferred revenue” on the condensed consolidated balance sheets.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;">The following table presents a roll-forward of contract liabilities activity for the <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2023</em> and <em style="font: inherit;">2022</em> (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"> </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: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>Contract Liabilities</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>Six Months Ended</b><br/> <b>June 30,</b> </b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b><b>2023</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b>2022</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred revenue - 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,679</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;">4,247</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Increases due to consideration received from customers</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,151</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,378</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Revenue recognized</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,564</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,013</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred revenue - 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: 16%; 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,266</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">5,612</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); margin-left: 0pt;"> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> </td> </tr> </tbody> </table> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;text-indent:9pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 28pt;">Revenue recognized during the <em style="font: inherit;">three</em>-and-<em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>from amounts included in deferred revenue at the beginning of the period were approximately $0.1 million and $2.0 million, respectively.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt -9pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 28pt;">Revenue recognized during the <em style="font: inherit;">three</em>-and-<em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2022 </em>from amounts included in deferred revenue at the beginning of the period were approximately $1.5 million and $1.8 million, respectively.</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt -9pt;"> </p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 28pt;">When invoicing occurs after revenue recognition, the Company has contract assets, included within “receivables” on the condensed consolidated balance sheet.</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; text-align: justify; margin: 0pt 0pt 0pt 28pt;">The following table presents a roll-forward of contract assets activity for the <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022</em> (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </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: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Contract Assets</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b><br/> <b>June 30,</b> </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unbilled receivables - beginning of period</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: 16%; text-align: right;">270</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">74</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Increases due to revenue recognized, not invoiced to customers</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: 16%; text-align: right;">2,070</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,937</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Decreases due to customer invoicing</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%; border-bottom: 1px solid black;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 16%; border-bottom: 1px solid black; text-align: right;">(2,047</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;">)</td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">(1,784</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">)</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unbilled receivables - 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">293</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">227</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); 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: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Three Months Ended</b></b></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 colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 36%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net sales of:</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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">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; margin-left: 0pt;">$</td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">98,660</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">89,672</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">193,352</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">159,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(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Tooling and Machinery</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">259</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,846</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,553</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">3,324</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Engineering services</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,118</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,825</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">2,885</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">3,124</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total net sales</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">100,037</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">94,343</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">197,790</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">165,585</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 98660000 89672000 193352000 159137000 259000 2846000 1553000 3324000 1118000 1825000 2885000 3124000 100037000 94343000 197790000 165585000 <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: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>Contract Liabilities</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>Six Months Ended</b><br/> <b>June 30,</b> </b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b><b>2023</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b>2022</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred revenue - 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,679</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;">4,247</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Increases due to consideration received from customers</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2,151</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,378</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Revenue recognized</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,564</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,013</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Deferred revenue - 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: 16%; 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,266</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">5,612</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); margin-left: 0pt;"> <p style="margin: 0pt; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </p> </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: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Contract Assets</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b><br/> <b>June 30,</b> </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unbilled receivables - beginning of period</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: 16%; text-align: right;">270</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">74</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Increases due to revenue recognized, not invoiced to customers</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: 16%; text-align: right;">2,070</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,937</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Decreases due to customer invoicing</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%; border-bottom: 1px solid black;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 16%; border-bottom: 1px solid black; text-align: right;">(2,047</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;">)</td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">(1,784</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">)</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Unbilled receivables - 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">293</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">227</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 4679000 4247000 2151000 3378000 2564000 2013000 4266000 5612000 100000 2000000.0 1500000 1800000 270000 74000 2070000 1937000 2047000 1784000 293000 227000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">4</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Supplemental Cash Flow 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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Supplemental cash flow information consists of the following (in thousands):</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: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash paid for:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,912</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,038</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Income taxes, net of refunds</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">8,112</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">5,033</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="width: 62%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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;">Non-cash investing and financing activities:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Capital additions accrued but not yet paid</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">218</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">208</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Operating lease right of use asset</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,524</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">289</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Operating lease 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(1,560</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(289</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:'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: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash paid for:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,912</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,038</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Income taxes, net of refunds</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">8,112</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">5,033</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="width: 62%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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;">Non-cash investing and financing activities:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Capital additions accrued but not yet paid</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">218</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">208</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Operating lease right of use asset</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,524</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">289</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Operating lease 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(1,560</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(289</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">)</td> </tr> </tbody> </table> 1912000 1038000 8112000 5033000 218000 208000 1524000 289000 -1560000 -289000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">5</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Receivables and Allowance for Credit Losses</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">Receivables consist of the following (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 60%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accounts receivable–trade</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">64,808</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">55,850</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less allowance for credit losses</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(718</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(733</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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;">Receivables, net</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">64,090</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">55,117</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); 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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company is exposed to credit losses primarily through sales of products and services. The Company’s expected loss allowance methodology for accounts receivable is developed using historical collection experience, current and future economic and market conditions, and a review of the current status of customers' trade accounts receivables. Due to the short-term nature of such receivables, the estimate of the amount of accounts receivable that <em style="font: inherit;"> may </em><em style="font: inherit;">not</em> be collected is based on the aging of the accounts receivable balances and the financial condition of customers. Additionally, specific allowance amounts are established to record the appropriate provision for customers that have a higher probability of default. The Company’s monitoring activities include timely account reconciliation, dispute resolution, payment confirmation, consideration of customers' financial condition and macroeconomic conditions. Balances are written off when determined to be uncollectible. Estimates based on an assessment of anticipated payment and all other historical, current, and future information that is reasonably available are used to determine the allowance.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table provides a roll-forward of the allowance for credit losses that is deducted from accounts receivable to present the net amount expected to be collected as of <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022</em> (in thousands):</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 12pt; margin: 0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 60%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Allowance for Credit</b><br/> <b>Losses</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b><br/> <b>June 30,</b> </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Allowance - 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">733</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">519</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Provision (Adjustment) for expected credit losses</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(13</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">159</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Amounts written off against the allowance</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(10</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(14</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Recoveries</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">8</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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;">Allowance - 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">718</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">664</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); 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> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 60%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accounts receivable–trade</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">64,808</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">55,850</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less allowance for credit losses</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(718</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(733</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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;">Receivables, net</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">64,090</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">55,117</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 64808000 55850000 718000 733000 64090000 55117000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 60%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Allowance for Credit</b><br/> <b>Losses</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b><br/> <b>June 30,</b> </b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Allowance - 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">733</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">519</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Provision (Adjustment) for expected credit losses</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(13</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">159</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Amounts written off against the allowance</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(10</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">(14</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Recoveries</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">8</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">-</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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;">Allowance - 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">718</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">664</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 733000 519000 -13000 159000 10000 14000 8000 0 718000 664000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"><tbody><tr><td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">6</em>)</b></p> </td><td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Fair Value of Financial Instruments</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">Financial instruments recorded at fair value in the consolidated balance sheets, or disclosed at fair value in the footnotes, are categorized based upon the level of judgment associated with the inputs used to measure their fair value. Hierarchical levels defined by ASC <em style="font: inherit;">820,</em> <i>Fair Value Measurements and Disclosures</i>, and directly related to the amount of subjectivity associated with inputs to fair valuation of these assets and liabilities, are as follows:</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;text-align:justify;margin:0pt 0pt 0pt 46pt;"><i>Level <em style="font: inherit;">1</em></i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 46pt;">Valued based on unadjusted, quoted prices in active markets for identical assets or liabilities at the measurement date. An active market for the asset or liability is a market in which transactions for the asset or liability occur with sufficient frequency and volume to provide pricing information on an ongoing basis.</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;text-align:justify;margin:0pt 0pt 0pt 46pt;"><i>Level <em style="font: inherit;">2</em></i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 46pt;">Valued based on either directly or indirectly observable prices for the asset or liability through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life.</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;text-align:justify;margin:0pt 0pt 0pt 46pt;"><i>Level <em style="font: inherit;">3</em></i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 46pt;">Valued based on management’s best estimate of what market participants would use in pricing the asset or liability at the measurement date. Consideration is given to the risk inherent in the valuation technique and the risk inherent in the inputs to the model.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table presents the fair value and hierarchy levels, for financial assets that are measured at fair value on a recurring basis (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </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: 28pt;"><tbody><tr 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: 62%;"> </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><b>June 30, 2023</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>December 31, 2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Level 3</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: 16%;"> </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: 16%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Purchase price contingent consideration:</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: 16%;"> </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: 16%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accrued contingent consideration (earn-out)</p> </td><td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">12,619</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">14,568</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Present value of non-competition 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;"> </td><td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">8,429</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">10,043</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">In connection with the acquisition of DAS Medical in <em style="font: inherit;">2021,</em> the Company is required to make contingent payments, subject to the entities achieving certain financial performance thresholds. The contingent consideration payments for the DAS Medical acquisition are up to $20 million. The Company paid $5 million during the <em style="font: inherit;">second</em> quarter of <em style="font: inherit;">2023.</em> The fair value of the liability for the contingent consideration payments recognized upon the acquisition as part of the purchase accounting opening balance sheets totaled approximately $9.7 million and was estimated by discounting to present value the probability-weighted contingent payments expected to be made. Assumptions used in this calculation were managements financial forecasts, discount rate and various volatility factors. The ultimate settlement of contingent consideration could deviate from current estimates based on the actual results of these financial measures. This liability is considered to be a Level <em style="font: inherit;">3</em> financial liability that is re-measured each reporting period. The fair value of the liability for the contingent consideration payments recognized at <em style="font: inherit;"> June 30, 2023 </em>totaled approximately $12.6 million.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">Also in connection with the DAS Medical and Advant Medical acquisitions, the Company has entered into Non-Competition Agreements with the beneficiaries and the Company has agreed to pay additional consideration to the parties to the Non-Competition Agreements, including an aggregate of $10.0 million in payments over the <span style="-sec-ix-hidden:c101288152">ten</span> years following the closing of the DAS Medical acquisition for the 10-year noncompetition covenants of certain key owners. The present value of the Non-Competition Agreements totaled approximately $8.4 million. This liability is considered to be a Level <i><em style="font: inherit;">3</em></i> financial liability that is re-measured each reporting period. The change in fair value of contingent consideration for the acquisition is included in change in fair value of contingent consideration in the condensed consolidated statements of comprehensive income.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has financial instruments, such as accounts receivable, accounts payable, and accrued expenses, that are stated at carrying amounts that approximate fair value because of the short maturity of those instruments. The carrying amount of the Company’s long-term debt approximates fair value as the interest rate on the debt approximates the estimated borrowing rate currently available to the Company.</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: 28pt;"><tbody><tr 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: 62%;"> </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><b>June 30, 2023</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>December 31, 2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Level 3</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: 16%;"> </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: 16%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Purchase price contingent consideration:</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: 16%;"> </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: 16%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accrued contingent consideration (earn-out)</p> </td><td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">12,619</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">14,568</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Present value of non-competition 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;"> </td><td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">8,429</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">10,043</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> 12619000 14568000 -8429000 -10043000 20000000 5000000 9700000 12600000 10000000.0 P10Y 8400000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">7</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Share-Based Compensation</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Share-based compensation is measured at the grant date based on the fair value of the award and is recognized as an expense over the requisite service period (generally the vesting period of the equity grant).</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company issues share-based awards through several plans that are described in detail in the notes to the consolidated financial statements for the year ended <em style="font: inherit;"> December 31, 2022. </em>The compensation cost charged against income for those plans is included in selling, general &amp; administrative expenses as follows (in thousands):</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: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Three Months Ended</b></b></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 colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Share-based compensation related to:</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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Common stock grants</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">100</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">100</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">200</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">200</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Stock option grants</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">113</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">60</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">207</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">113</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Restricted Stock Unit Awards ("RSUs")</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">984</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">621</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,846</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,160</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total share-based compensation</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,197</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">781</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,253</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,473</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); 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;text-align:justify;margin:0pt 0pt 0pt 28pt;">The total income tax benefit recognized in the condensed consolidated statements of comprehensive income for share-based compensation arrangements was approximately $752 thousand and $236 thousand for the <em style="font: inherit;">three</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> respectively, and approximately $1.6 million and $617 thousand for the <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2023</em> and <em style="font: inherit;">2022,</em> respectively.</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;text-align:justify;margin:0pt;text-indent:27pt;"><i>Common stock grants</i></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The compensation expense for common stock grants during the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 2023, </em>was determined based on an approved fixed dollar amount with the number of shares to be determined on the date of issuance.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;"><i>Stock Option grants</i></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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following is a summary of stock option activity under all plans for the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2023:</em></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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><b>Shares Under </b></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><b>Options</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Weighted Average </b></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><b>Exercise Price</b> </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(per share)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Weighted Average Remaining Contractual Life</b> </b></p> <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; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Aggregate Intrinsic Value</b> </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(in thousands)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at December 31, 2022</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">92,075</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: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.98</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><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: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">12,153</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: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">131.13</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><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: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">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; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(25,740</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">30.67</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); margin-left: 0pt;"> </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="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><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: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">78,488</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">57.14</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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.06</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">10,730</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Exercisable at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">66,335</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">43.59</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">5.98</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">9,967</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Vested and expected to vest at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">78,488</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">57.14</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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.06</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">10,730</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); 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;text-align:justify;margin:0pt 0pt 0pt 27pt;">On <em style="font: inherit;"> June 7, 2023, </em>the Company granted options to its directors for the purchase of 4,215 shares of the Company’s common stock at that day’s closing price of $167.98. On <em style="font: inherit;"> February 14, 2023, </em>the Company granted options to its President and Chief Executive Officer for the purchase of 7,935 shares of common stock at that day’s closing price of $111.54. The compensation expense related to these grants was determined as the fair value of the options using the Black-Scholes option pricing model based on the following assumptions:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 80%; margin-left: 10%; margin-right: 10%;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292449">Expected volatility</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292450">36.6% / 40.6%</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292451">Expected dividends</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292452">None</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292453">Risk-free interest rate</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292454">3.6% / 3.9%</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292455">Exercise price</span></p> </td><td class="GFJY4-DIN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292456">$111.54 / $167.98</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292457">Expected term (years)</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292458">6.2 / 6.8</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292459">Weighted-average grant date fair value</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292460">$37.81 / $71.17</span></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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The stock volatility for each grant is determined based on a review of the experience of the weighted average of historical daily price changes of the Company’s common stock over the expected option term, and the risk-free interest rate is based on the U.S. Treasury yield curve in effect at the time of grant for periods correspond‐ing with the expected term of the option. The expected term is estimated based on historical option exercise activity.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">During the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> the total intrinsic value of all options exercised was approximately $3.0 million and $72 thousand, respectively, and the total amount of consideration received by the Company from the exercised options was approximately $789 thousand and $21 thousand, respectively. At its discretion, the Company allows option holders to surrender previously owned common stock in lieu of paying the exercise price and withholding taxes. During the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 2023, </em>861 shares were surrendered at an average market price of $127.05. Zero shares were surrendered during the same period in <em style="font: inherit;">2022.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;"><i>RSUs</i></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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table summarizes information about RSU activity during the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 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: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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><b>Restricted </b></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><b>Stock Units</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>Weighted Average</b><br/> <b>Grant Date</b><br/> <b>Fair Value</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at December 31, 2022</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">102,048</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;">56.02</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Awarded</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,050</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">113.91</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(52,126</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">55.17</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares 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: 16%; 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);">(99</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); margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97.61</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">95,873</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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;">53.59</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">At the Company’s discretion, upon vesting, RSU holders are given the option to net-share settle to cover the required minimum withholding tax, and the remaining amount is converted into the equivalent number of common shares and issued to the RSU holder. During the <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> 20,457 and 19,425 shares were surrendered at an average market price of $117.95 and $67.05, respectively.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of <em style="font: inherit;"> June 30, 2023, </em>the Company had approximately $7.5 million of unrecognized compensation expense that is expected to be recognized over a period of 2.75 years.</p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Three Months Ended</b></b></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 colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><b>Share-based compensation related to:</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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Common stock grants</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">100</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">100</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">200</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">200</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Stock option grants</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">113</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">60</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">207</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">113</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Restricted Stock Unit Awards ("RSUs")</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">984</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">621</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,846</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">1,160</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total share-based compensation</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,197</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">781</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,253</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,473</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 100000 100000 200000 200000 113000 60000 207000 113000 984000 621000 1846000 1160000 1197000 781000 2253000 1473000 752000 236000 1600 617000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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><b>Shares Under </b></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><b>Options</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Weighted Average </b></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><b>Exercise Price</b> </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(per share)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Weighted Average Remaining Contractual Life</b> </b></p> <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; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Aggregate Intrinsic Value</b> </b></p> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">(in thousands)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at December 31, 2022</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">92,075</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: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">39.98</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><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: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">12,153</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: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">131.13</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><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: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">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; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(25,740</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">30.67</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); margin-left: 0pt;"> </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="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><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: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">78,488</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">57.14</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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.06</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">10,730</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Exercisable at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">66,335</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">43.59</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">5.98</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">9,967</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Vested and expected to vest at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">78,488</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">57.14</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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.06</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; 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);">10,730</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 92075 39.98 12153 131.13 25740 30.67 78488 57.14 P6Y21D 10730000 66335 43.59 P5Y11M23D 9967000 78488 57.14 P6Y21D 10730000 4215 167.98 7935 111.54 <table cellpadding="0" cellspacing="0" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 80%; margin-left: 10%; margin-right: 10%;"><tbody><tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292449">Expected volatility</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292450">36.6% / 40.6%</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292451">Expected dividends</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292452">None</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292453">Risk-free interest rate</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292454">3.6% / 3.9%</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292455">Exercise price</span></p> </td><td class="GFJY4-DIN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292456">$111.54 / $167.98</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(204, 238, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292457">Expected term (years)</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292458">6.2 / 6.8</span></p> </td></tr> <tr style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; background-color: rgb(255, 255, 255);"><td style="vertical-align: bottom; width: 81%; 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;"><span style="-sec-ix-hidden:c101292459">Weighted-average grant date fair value</span></p> </td><td style="vertical-align: bottom; width: 19%; 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;"><span style="-sec-ix-hidden:c101292460">$37.81 / $71.17</span></p> </td></tr> </tbody></table> 3000000.0 72000000 789000000 21000000 861 127.05 <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: 28pt;"> <tbody> <tr 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: 62%;"> </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><b>Restricted </b></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><b>Stock Units</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>Weighted Average</b><br/> <b>Grant Date</b><br/> <b>Fair Value</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at December 31, 2022</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">102,048</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;">56.02</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Awarded</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">46,050</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">113.91</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares 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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(52,126</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">55.17</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares 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: 16%; 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);">(99</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); margin-left: 0pt;">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">97.61</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; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Outstanding at June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">95,873</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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;">53.59</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td> </tr> </tbody> </table> 102048 56.02 46050 113.91 52126 55.17 99 97.61 95873 53.59 20457 19425 117.95 67.05 7500000 P2Y9M <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">8</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Inventories are stated at the lower of cost (determined using the <em style="font: inherit;">first</em>-in, <em style="font: inherit;">first</em>-out method) or net realizable value, and consist of the following at the stated dates (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </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: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">44,018</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">42,475</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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,453</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,183</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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">11,578</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">6,878</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total inventory</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">63,049</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">53,536</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); 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: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">44,018</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">42,475</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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,453</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,183</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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">11,578</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">6,878</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total inventory</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">63,049</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">53,536</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 44018000 42475000 7453000 4183000 11578000 6878000 63049000 53536000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">9</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Property, Plant and Equipment</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;">Property, plant, and equipment consist of the following (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 23pt;"> </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: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="2" style="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); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: right; 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; margin: 0pt; text-align: center;"><b><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Land and improvements</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,834</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,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(255, 255, 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;">Buildings and improvements</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">34,528</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">34,446</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Leasehold improvements</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,920</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">5,503</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Machinery &amp; 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">53,533</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">52,233</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Furniture, fixtures, computers &amp; 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6,544</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6,401</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Construction in progress</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">8,476</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">7,272</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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 0pt 0pt 9pt;">Property, plant 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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">115,835</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">110,666</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accumulated depreciation and 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(55,996</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(52,594</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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 0pt 0pt 18pt;">Net property, plant 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; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">59,839</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">58,072</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); 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: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td colspan="2" style="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); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: right; 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; margin: 0pt; text-align: center;"><b><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Land and improvements</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,834</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,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(255, 255, 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;">Buildings and improvements</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">34,528</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">34,446</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Leasehold improvements</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,920</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">5,503</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Machinery &amp; 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">53,533</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">52,233</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Furniture, fixtures, computers &amp; 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6,544</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6,401</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Construction in progress</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">8,476</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">7,272</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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 0pt 0pt 9pt;">Property, plant 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; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">115,835</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">110,666</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Accumulated depreciation and 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(55,996</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(52,594</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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 0pt 0pt 18pt;">Net property, plant 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; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">59,839</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">58,072</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 4834000 4811000 34528000 34446000 7920000 5503000 53533000 52233000 6544000 6401000 8476000 7272000 115835000 110666000 55996000 52594000 59839000 58072000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">10</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has operating and finance leases for offices, manufacturing plants, vehicles and certain office and manufacturing equipment. Leases with an initial term of <em style="font: inherit;">12</em> months or less are <em style="font: inherit;">not</em> recorded on the balance sheet. The Company accounts for each separate lease component of a contract and its associated non-lease components as a single lease component, thus causing all fixed payments to be capitalized. Variable lease payment amounts that cannot be determined at the commencement of the lease such as increases in lease payments based on changes in index rates or usage, are <em style="font: inherit;">not</em> included in the right of use (“ROU”) assets or lease liabilities. These are expensed as incurred and recorded as variable lease expense. The Company determines if an arrangement is a lease at the inception of a contract. Operating and finance lease ROU assets and operating and finance lease liabilities are stated separately in the condensed consolidated balance sheet. </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;text-align:justify;margin:0pt 0pt 0pt 27pt;">ROU assets represent the Company's right to use an underlying asset during the lease term and lease liabilities represent the Company's obligation to make lease payments pursuant to the lease.  ROU assets and lease liabilities are recognized at commencement date based on the net present value of fixed lease payments over the lease term.  The Company's assumed lease term includes options to extend or terminate the lease when it is reasonably certain that it will exercise that option.  ROU assets are also adjusted for any deferred or accrued rent. As the Company's leases do <em style="font: inherit;">not</em> typically provide an implicit rate, the Company uses its incremental borrowing rate based on the information available at commencement date in determining the present value of lease payments.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">ROU assets and lease liabilities consist of the following (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b><b>June 30,</b></b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b><b>December 31,</b></b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b><b>2023</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b>2022</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease ROU 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;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,751</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;">12,942</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finance lease ROU 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">181</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">211</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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 0pt 0pt 9pt;">Total ROU 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: 16%; 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,932</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,153</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease liabilities, current</p> </td> <td style="width: 1%; font-family: &quot;Times New 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,554</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;">2,458</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finance lease liabilities, current</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">60</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">59</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total lease liabilities, current</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">2,614</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">2,517</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease liabilities, 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; 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;">11,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; 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;">10,695</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finance lease liabilities, 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; border-bottom: 1px solid black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">126</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">156</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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 0pt 0pt 9pt;">Total lease liabilities, 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; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; 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,667</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">10,851</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); 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> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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; width: 20%; 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;">($ in thousands)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Lease Cost:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Finance lease cost:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Amortization of right of use 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;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">30</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">30</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Interest on lease 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">3</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,301</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Variable 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">159</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">156</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">14</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">43</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total 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; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,685</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,533</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); 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: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">($ in thousands)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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; 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><b>2023</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>2022</b></b></p> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash paid for amounts included in measurement of lease liabilities:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Operating cash flows from operating leases</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,183</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Financing cash flows from finance leases</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">32</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">32</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="width: 62%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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;">Weighted-average remaining lease term (years):</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Finance</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">3.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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4.04</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Operating</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4.81</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4.06</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: 62%;"> <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: 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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Finance</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.10</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Operating</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.43</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.76</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; text-align: justify; margin: 0pt 0pt 0pt 27pt;">The aggregate future lease payments for leases as of <em style="font: inherit;"> June 30, 2023 </em>are as follows (in thousands):</p> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; text-align: justify; margin: 0pt 0pt 0pt 27pt;"> </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: 28pt;"> <tbody> <tr 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: 62%;"> </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><b>Finance</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black; 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><b>Operating</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Remainder of 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">32</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,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; background-color: rgb(255, 255, 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; width: 62%;"> <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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">63</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,962</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; 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">63</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,797</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; background-color: rgb(255, 255, 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">29</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,429</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; 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,064</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; background-color: rgb(255, 255, 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">-</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">3,773</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); margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">193</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">15,498</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less: 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(7</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(1,403</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value of lease 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; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">186</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,095</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); 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> <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b><b>June 30,</b></b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b><b>December 31,</b></b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b><b>2023</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b>2022</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease ROU 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;">$</td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">13,751</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;">12,942</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finance lease ROU 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">181</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">211</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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 0pt 0pt 9pt;">Total ROU 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: 16%; 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,932</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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,153</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease liabilities, current</p> </td> <td style="width: 1%; font-family: &quot;Times New 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,554</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;">2,458</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finance lease liabilities, current</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">60</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">59</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total lease liabilities, current</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">2,614</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">2,517</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Operating lease liabilities, 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; 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;">11,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; 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;">10,695</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Finance lease liabilities, 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; border-bottom: 1px solid black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">126</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">156</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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 0pt 0pt 9pt;">Total lease liabilities, 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; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; 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,667</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">10,851</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 13751000 12942000 181000 211000 13932000 13153000 2554000 2458000 60000 59000 2614000 2517000 11541000 10695000 126000 156000 11667000 10851000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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; width: 20%; 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;">($ in thousands)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </td> </tr> <tr 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: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Lease Cost:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Finance lease cost:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Amortization of right of use 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;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">30</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">30</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Interest on lease 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">3</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,301</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Variable 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">159</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">156</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">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; border-bottom: 1px solid rgb(0, 0, 0);"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">14</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">43</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); margin-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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total 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; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,685</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,533</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); 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: 28pt;"> <tbody> <tr 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: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;">($ in thousands)</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr 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: 62%;"> </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; 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><b>2023</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>2022</b></b></p> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash paid for amounts included in measurement of lease liabilities:</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Operating cash flows from operating leases</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,183</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Financing cash flows from finance leases</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">32</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">32</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="width: 62%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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;">Weighted-average remaining lease term (years):</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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Finance</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">3.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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4.04</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Operating</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4.81</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4.06</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: 62%;"> <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: 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: 16%;"> </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: 16%;"> </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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Finance</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.10</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Operating</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3.43</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: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">2.76</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">%</td> </tr> </tbody> </table> 30000 30000 2000 3000 1480000 1301000 159000 156000 14000 43000 1685000 1533000 1407000 1183000 32000 32000 P3Y14D P4Y14D P4Y9M21D P4Y21D 0.0210 0.0210 0.0343 0.0276 <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: 28pt;"> <tbody> <tr 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: 62%;"> </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><b>Finance</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black; 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><b>Operating</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Remainder of 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">32</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">1,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; background-color: rgb(255, 255, 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; width: 62%;"> <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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">63</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,962</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; 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">63</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,797</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; background-color: rgb(255, 255, 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">29</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,429</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; 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,064</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; background-color: rgb(255, 255, 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; width: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">-</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">3,773</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); margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">193</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">15,498</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; background-color: rgb(255, 255, 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Less: 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(7</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(1,403</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> </tr> <tr style="vertical-align: bottom; 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; width: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value of lease 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; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">186</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,095</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 32000 1473000 63000 2962000 63000 2797000 29000 2429000 6000 2064000 0 3773000 193000 15498000 7000 1403000 186000 14095000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"><tbody><tr><td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">11</em>)</b></p> </td><td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Income Per Share</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Basic income per share is based on the weighted average number of shares of common stock outstanding. Diluted income per share is based upon the weighted average number of common shares outstanding and dilutive common stock equivalent shares outstanding during each period.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The weighted average number of shares used to compute basic and diluted net income per share consisted of the following (in thousands):</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: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"><tbody><tr 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: 36%;"> </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; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Three Months Ended</b></b></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 colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 36%;"> </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><b>2023</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2023</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,625</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,563</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,608</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,554</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average common equivalent shares due to restricted stock, stock options and RSUs</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">65</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">45</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">81</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">64</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,690</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,608</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,689</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,618</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); 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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The computation of diluted earnings per share excludes the effect of the potential exercise of stock awards, including stock options, when the average market price of the common stock is lower than the exercise price of the related stock options during the period. These outstanding stock options are <em style="font: inherit;">not</em> included in the computation of diluted income per share because the effect would be antidilutive. For the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June 30, 2023, </em>the number of stock options excluded from the computation of diluted earnings per share for this reason was 4,218 and 12,153, respectively. For both the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month period ended <em style="font: inherit;"> June </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the number of stock options excluded from the computation of diluted earnings per share for this reason was 9,876.</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: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"><tbody><tr 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: 36%;"> </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; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Three Months Ended</b></b></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 colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Six Months Ended</b></b></p> </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;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 17%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>June 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 36%;"> </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><b>2023</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2023</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,625</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,563</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,608</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,554</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted average common equivalent shares due to restricted stock, stock options and RSUs</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">65</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">45</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">81</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">64</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); margin-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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Diluted weighted average common shares outstanding</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,690</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,608</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,689</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">7,618</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); margin-left: 0pt;"> </td></tr> </tbody></table> 7625000 7563000 7608000 7554000 65000 45000 81000 64000 7690000 7608000 7689000 7618000 4218 12153 9876 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"><tbody><tr><td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">12</em>)</b></p> </td><td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Segment Reporting</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">The Company consists of a <span style="-sec-ix-hidden:c101288424">single</span> operating and reportable segment.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;">Revenues shipped to customers outside of the United States comprised approximately 18.5 % and 17.6 % for the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023, </em>respectively. Revenues shipped to customers outside of the United States comprised approximately 16.9% and 14.8% for the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2022, </em>respectively.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"><span style="-sec-ix-hidden:c101288423">One</span> customer comprised 24.7% and 22.7% of the Company’s consolidated revenues for the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023, </em>respectively. One customer comprised 20.2% and 17.8% of the Company’s consolidated revenues for the <em style="font: inherit;">three</em>-and-<em style="font: inherit;">six</em> month periods ended <em style="font: inherit;"> June 30, 2022, </em>respectively.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">At <em style="font: inherit;"> June 30, 2023, </em>two customers represented approximately 23.8% of gross accounts receivable. At <em style="font: inherit;"> December 31, 2022, </em>one customer represented approximately 10% of gross accounts receivable.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Approximately 18.6% and 17.0% of all long-lived assets are located outside of the United States at <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;"> December 31, 2022, </em>respectively.</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;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company’s products are primarily sold to customers within the Medical, Aerospace &amp; Defense, Automotive, and Industrial/Other markets. Net sales by market for the <em style="font: inherit;">three</em>- and <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022</em> are as follows (in thousands):</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: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"><tbody><tr 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: 12%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" 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: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>Three Months Ended June 30,</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" 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: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>Six Months Ended June 30,</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 12%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>Market</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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 12%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; 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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Medical</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">86,150</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">86.1</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">74,290</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">78.7</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">169,965</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">85.9</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">126,873</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">76.6</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Aerospace &amp; Defense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,234</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.2</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,751</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.0</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,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;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.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;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,507</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.5</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Automotive</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,096</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.1</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,351</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.6</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,443</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.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;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5.3</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Industrial / 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">5,557</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">5.6</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</td><td style="width: 1%; font-family: &quot;Times New 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">11,951</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">12.7</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</td><td style="width: 1%; font-family: &quot;Times New 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">10,931</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">5.5</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</td><td style="width: 1%; font-family: &quot;Times New 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">22,503</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">13.6</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net Sales</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 8%; 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,037</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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: 1%; font-family: &quot;Times New 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: 8%; 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);">94,343</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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: 1%; font-family: &quot;Times New 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: 8%; 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);">197,790</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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: 1%; font-family: &quot;Times New 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: 8%; 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);">165,585</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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></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> 0.185 0.176 0.169 0.148 1 0.247 0.227 0.202 0.178 2 0.238 1 0.10 0.186 0.170 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"><tbody><tr 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: 12%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" 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: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>Three Months Ended June 30,</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" 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: 34%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>Six Months Ended June 30,</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 12%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2023</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b><b><b>2022</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr 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: 12%; border-bottom: 1px solid black;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>Market</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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b><b><b><b>Net Sales</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b><b><b><b>%</b></b></b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="width: 12%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; 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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Medical</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">86,150</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">86.1</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">74,290</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">78.7</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">169,965</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">85.9</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">126,873</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">76.6</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Aerospace &amp; Defense</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,234</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.2</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">3,751</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.0</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,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;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.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;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">7,507</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.5</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Automotive</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,096</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.1</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4,351</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.6</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,443</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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">4.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;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">8,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: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">5.3</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Industrial / 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">5,557</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">5.6</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</td><td style="width: 1%; font-family: &quot;Times New 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">11,951</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">12.7</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</td><td style="width: 1%; font-family: &quot;Times New 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">10,931</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">5.5</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</td><td style="width: 1%; font-family: &quot;Times New 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 black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">22,503</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td><td style="width: 8%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">13.6</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">%</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: 12%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Net Sales</p> </td><td style="width: 1%; font-family: &quot;Times New 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: 8%; 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,037</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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: 1%; font-family: &quot;Times New 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: 8%; 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);">94,343</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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: 1%; font-family: &quot;Times New 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: 8%; 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);">197,790</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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: 1%; font-family: &quot;Times New 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: 8%; 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);">165,585</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); margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 8%; 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.0</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></tr> </tbody></table> 86150000 0.861 74290000 0.787 169965000 0.859 126873000 0.766 4234000 0.042 3751000 0.040 8451000 0.043 7507000 0.045 4096000 0.041 4351000 0.046 8443000 0.043 8702000 0.053 5557000 0.056 11951000 0.127 10931000 0.055 22503000 0.136 100037000 1.000 94343000 1.000 197790000 1.000 165585000 1.000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">13</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Goodwill and Other 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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The change in the carrying amount of goodwill for the <em style="font: inherit;">six</em> months ended <em style="font: inherit;"> June 30, 2023 </em>was as follows (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"> </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: 28pt;"> <tbody> <tr 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: 81%;"> </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><b><b>Goodwill</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="width: 81%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">December 31, 2022</p> </td> <td style="width: 1%; font-family: &quot;Times New 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;">113,028</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Foreign currency translation</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">113,168</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); 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;text-align:justify;margin:0pt 0pt 0pt 28pt;">The carrying values of the Company’s definite lived intangible assets as of <em style="font: inherit;"> June 30, 2023 </em>are as follows (in thousands):</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: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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><b>Intellectual Property /</b><br/> <b>Tradename &amp; Brand</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Non-</b><br/> <b>Compete</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Customer</b><br/> <b>List</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Total</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted-average amortization period (years)</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;">11.9</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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;">9.3</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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;">20</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Gross amount</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,106</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">5,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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">65,232</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">77,840</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accumulated 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(1,028</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(1,260</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(9,299</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(11,587</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net balance</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,078</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,242</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">55,933</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">66,253</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); 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;text-align:justify;margin:0pt 0pt 0pt 28pt;">Amortization expense related to intangible assets was approximately $1.0 million and $1.1 million, respectively, for the <em style="font: inherit;">three</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> and $2.1 million and $2.1 million, respectively, for the <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022.</em> The estimated remaining amortization expense as of <em style="font: inherit;"> June 30, 2023 </em>is as follows (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"> <tbody> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">Remainder of 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">3,308</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,401</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,401</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,399</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,397</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,350</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">Thereafter</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">40,997</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">66,253</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); 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: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 81%;"> </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><b><b>Goodwill</b></b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> </tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> <td style="width: 81%; font-family: &quot;Times New Roman&quot;, Times, serif; 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; 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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">December 31, 2022</p> </td> <td style="width: 1%; font-family: &quot;Times New 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;">113,028</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Foreign currency translation</p> </td> <td style="width: 1%; font-family: &quot;Times New 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 black;"> </td> <td style="width: 16%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;">140</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">June 30, 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; 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);">113,168</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 113028000 140000 113168000 <table cellpadding="0" cellspacing="0" class="finTable" style="margin-right: auto; width: 97%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 36%;"> </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><b>Intellectual Property /</b><br/> <b>Tradename &amp; Brand</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Non-</b><br/> <b>Compete</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Customer</b><br/> <b>List</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>Total</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Weighted-average amortization period (years)</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;">11.9</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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;">9.3</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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;">20</p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"><em style="font: inherit;"> </em></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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Gross amount</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,106</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">5,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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">65,232</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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">77,840</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accumulated 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(1,028</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(1,260</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(9,299</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(11,587</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Net balance</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">6,078</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,242</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">55,933</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 13%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">66,253</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> P11Y10M24D P9Y3M18D P20Y 7106000 5502000 65232000 77840000 1028000 1260000 9299000 11587000 6078000 4242000 55933000 66253000 1000000.0 1100000 2100000 2100000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;; text-indent: 0px;"> <tbody> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 81%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">Remainder of 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">3,308</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,401</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,401</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,399</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2027</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,397</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">2028</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">4,350</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt;">Thereafter</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">40,997</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> </tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"> <td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">66,253</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); margin-left: 0pt;"> </td> </tr> </tbody> </table> 3308000 4401000 4401000 4399000 4397000 4350000 40997000 66253000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">14</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Other Long-Term Liabilities</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">Other long-term liabilities consist of the following (in thousands):</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: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued contingent consideration (earn-out)</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,619</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">9,568</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value of non-competition 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6,467</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">8,155</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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">500</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">497</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); margin-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: 62%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,586</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">18,220</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); 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: 80%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px; margin-left: 28pt;"> <tbody> <tr 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: 62%;"> </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; 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><b>June 30,</b></b></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 colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; 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><b>December 31,</b></b></p> </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;"> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 62%;"> </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><b>2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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><b>2022</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Accrued contingent consideration (earn-out)</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">7,619</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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">9,568</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: 62%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value of non-competition 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;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">6,467</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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">8,155</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: 62%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">500</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">497</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); margin-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: 62%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">14,586</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">18,220</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 7619000 9568000 6467000 8155000 500000 497000 14586000 18220000 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">15</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Income Taxes</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">The determination of income tax expense in the accompanying unaudited condensed consolidated statements of income is based upon the estimated effective tax rate for the year, adjusted for the impact of any discrete items which are accounted for in the period in which they occur. The Company recorded income tax expense of approximately 25.6% and 23.2% of income before income tax expense for the <em style="font: inherit;">three</em>-month periods ended <em style="font: inherit;"> June 30, 2023 </em>and <em style="font: inherit;">2022,</em> respectively. The Company recorded income tax expense of approximately 22.4% and 22.1% of income before income tax expense for the <em style="font: inherit;">six</em>-month periods ended <em style="font: inherit;"> June </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2023</em> and <em style="font: inherit;">2022,</em> respectively.</p> 0.256 0.232 0.224 0.221 <table border="0" cellpadding="0" cellspacing="0" style="width:100%;font-family:Times New Roman;font-size:10pt;"> <tbody> <tr> <td style="vertical-align:top;width:18pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>(<em style="font: inherit;">16</em>)</b></p> </td> <td style="vertical-align:top;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Indebtedness</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:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">On <em style="font: inherit;"> December 22, 2021</em><i>,</i> the Company, as the borrower, entered into a secured $130 million Second Amended and Restated Credit Agreement (the “Second Amended and Restated Credit Agreement”) with certain of the Company’s subsidiaries (the “Subsidiary Guarantors”) and Bank of America, N.A., in its capacity as the initial lender, Administrative Agent, Swingline Lender and L/C Issuer, and certain other lenders from time-to-time party thereto. The Second Amended and Restated Credit Agreement amends and restates the Company’s prior credit agreement, originally dated as of <em style="font: inherit;"> February 1, 2018.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;">The credit facilities under the Second Amended and Restated Credit Agreement consist of a $40 million secured term loan to the Company and a secured revolving credit facility, under which the Company <em style="font: inherit;"> may </em>borrow up to $90 million. The Second Amended and Restated Credit Agreement matures on <em style="font: inherit;"> December 21, 2026</em><i>.</i> The secured term loam requires quarterly principal payments of $1,000,000 commencing on <em style="font: inherit;"> March 31, 2022</em><i>.</i> The proceeds of the Second Amended and Restated Credit Agreement <em style="font: inherit;"> may </em>be used for general corporate purposes, including funding certain permitted acquisitions. The Company’s obligations under the Second Amended and Restated Credit Agreement are guaranteed by Subsidiary Guarantors.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;">The Second Amended and Restated Credit Agreement calls for interest determined by the Bloomberg Short-Term Bank Yield Index rate (“BSBY”) plus a margin that ranges from 1.25% to 2.0% or, at the discretion of the Company, the bank’s prime rate less a margin that ranges from <span style="-sec-ix-hidden:c101288591">.25%</span> to zero. In both cases the applicable margin is dependent upon Company performance. Under the Second Amended and Restated Credit Agreement, the Company is subject to a minimum fixed-charge coverage financial covenant as well as a maximum total funded debt to EBITDA financial covenant. The Second Amended and Restated Credit Agreement contains other covenants customary for transactions of this type, including restrictions on certain payments, permitted indebtedness, and permitted investments.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;">At <em style="font: inherit;"> June 30, 2023</em><i>,</i> the Company had approximately $57 million in borrowings outstanding under the Second Amended and Restated Credit Agreement, which were used as partial consideration for the DAS Medical and Advant acquisitions, and also had approximately $0.7 million in standby letters of credit outstanding, drawable as a financial guarantee on worker’s compensation insurance policies. At <em style="font: inherit;"> June 30, 2023</em><i>,</i> the applicable interest rate was approximately 6.4% and the Company was in compliance with all covenants under the Second Amended and Restated Credit Agreement.</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;text-align:justify;margin:0pt 0pt 0pt 28pt;">Long-term debt consists of the following (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"> </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: 28pt;"> <tbody> <tr 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: 81%;"> </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; width: 1%; 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><b>June 30, 2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Revolving credit facility</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">23,000</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Term loan</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">34,000</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); margin-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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total long-term debt</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">57,000</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Current portion</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(4,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-term debt, excluding current portion</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">53,000</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); 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;text-align:justify;margin:0pt 0pt 0pt 28pt;">Future maturities of long-term debt at <em style="font: inherit;"> June 30, 2023 </em>are as follows (in thousands):</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"> </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: 28pt;"> <tbody> <tr 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: 43%;"> </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><b>Term Loan</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>Revolving credit facility</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>Total</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 43%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Remainder of 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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: 16%; text-align: right;">-</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,000</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: 43%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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: 16%; text-align: right;">-</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</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: 43%;"> <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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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: 16%; text-align: right;">-</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</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: 43%;"> <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; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">24,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">23,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">47,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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: 43%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">34,000</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">23,000</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">57,000</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 130000000 40000000 90000000 1000000 0.0125 0.020 57000000 700000 0.064 <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: 28pt;"> <tbody> <tr 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: 81%;"> </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; width: 1%; 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><b>June 30, 2023</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Revolving credit facility</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">23,000</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Term loan</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">34,000</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); margin-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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Total long-term debt</p> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">57,000</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Current portion</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(4,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">)</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: 81%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-term debt, excluding current portion</p> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">53,000</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 23000000 34000000 57000000 4000000 53000000 <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: 28pt;"> <tbody> <tr 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: 43%;"> </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><b>Term Loan</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>Revolving credit facility</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%; border-bottom: 1px solid black;"> </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><b>Total</b></b></p> </td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); 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: 43%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">Remainder of 2023</p> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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: 16%; text-align: right;">-</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">2,000</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: 43%;"> <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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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: 16%; text-align: right;">-</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</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: 43%;"> <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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </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: 16%; text-align: right;">-</td> <td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right;">4,000</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: 43%;"> <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; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">24,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">23,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid black;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </td> <td style="width: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid black;">47,000</td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid black;"> </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: 43%;"> </td> <td style="width: 1%; font-family: &quot;Times New 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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">34,000</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">23,000</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); margin-left: 0pt;"> </td> <td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double black;"> </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: 16%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">57,000</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); margin-left: 0pt;"> </td> </tr> </tbody> </table> 2000000 0 2000000 4000000 0 4000000 4000000 0 4000000 24000000 23000000 47000000 34000000 23000000 57000000 <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 63pt;text-indent:-63pt;"><b><a href="#" id="P2I5" title="P2I5"></a>ITEM <em style="font: inherit;">5:</em></b>          <b>OTHER INFORMATION</b></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;text-align:justify;margin:0pt;"><i>Insider Trading Arrangements and Policies</i></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;text-align:justify;margin:0pt;">During the <em style="font: inherit;">second</em> quarter of <em style="font: inherit;">2023,</em> <em style="font: inherit;">none</em> of our directors or executive officers adopted Rule <em style="font: inherit;">10b5</em>-<em style="font: inherit;">1</em> trading plans and <em style="font: inherit;">none</em> of our directors or executive officers terminated a Rule <em style="font: inherit;">10b5</em>-<em style="font: inherit;">1</em> trading plan or adopted or terminated a non-Rule <em style="font: inherit;">10b5</em>-<em style="font: inherit;">1</em> trading arrangement (as defined in Item <em style="font: inherit;">408</em>(c) of regulation S-K)</p> EXCEL 82 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( !1("5<'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 " 42 E7(4,#M>X K @ $0 &1O8U!R;W!S+V-O&ULS9+/ M2L0P$(=?17)O)VU -'1[43PI""XHWD(RNQML_I",M/OVIG6WB^@#>,S,+]]\ M ]/I*'5(^)Q"Q$06\]7D!I^ECAMV((H2(.L#.I7KDO"EN0O)*2K/M(>H](?: M([2<7X-#4D:1@AE8Q97(^LYHJ1,J"NF$-WK%Q\\T+#"C 0=TZ"E#4S? ^GEB M/$Y#!Q? #"-,+G\7T*S$I?HG=ND .R6G;-?4.([U*)9?)K^+N?OO ^I:WHN(W%;_=-D)R+EOQ/KO^\+L(NV#LSOYC MX[-@W\&ON^B_ %!+ P04 " 42 E7F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M !1("5<^GQZ6P04 ,\> 8 >&PO=V]R:W-H965T&UL MM9GA;^(V&,;_%8M)TR8=)7: MC>*1-/VCNVNY8[>IFW:!Y,8B"Z)F>.4]K_? MZR0D7.6\L.CHAY*$/$_\LQW[,1YMI?J:KH70Y#F.DO2JL]9Z\[;72_VUB'EZ M)CDH3,1,D32+ M8ZY>KD4DMU<=VME=^!RNUMI= M"7WKN8N2==]7]'W, M?5QV%0\J0/$(ZB 0S^0W\6*#QIT<^+ND?3H8VAA1;4O&0<4X.(;QLUB%*5!" M4]_S6-@(<9\O=S/R>.N]OW_X\/!N>CLGTWO/QHJZM&0=5JQ#M(P3Z,I!WIWO M(KZR,>+Z)8]26]5XJ*PEU'D%=8X6RLN4RI'"U(=.^J?@RHQ&!$9*:S/B;MTN M95V7VB!184O(BPKR BU6-0Z5E#.A0AF0.[AL';5QMT_,QH=J6O)=5GR7_XLO M;\5&.MRK:>9 52WYJ%-/P3C0J7M<7:2Q;T.*Q/&5=: MJ,@,I1NIM!41]](JLXXNN*PM(JL1V7&(Y4N'#2X'K*ITTQAO<(.VK'7 MV.NE,!6F81YWD/;$S1JG"US7%K).-?2H6',71H+<9_%"*"O_N;4BGR+8 MT#K94#R:E,B/_)E, ^C X3+TB[2.M#!NZ?2[S*7]RW/'RGN*S$/KT$/QG%+R M3H( W-,WNP.2+TT>$GN[XI;4<[%=I&IEX;1S6Z<;7-46JPY(#$\U'V2^)%G+!)M/#YBX ]9ES+$WVRE"$:M#$<-SS&.H M85242T+93XN?R5SXF8*6M$+B3IZ,8YB2YEKZ7ZV@IPA&K Y&#,\T$/J",%F1 M^4N\D)&5#S?X*F./6,]A%[ M>UN&IO?E.ZDI\;/5^Y*;SIB022Y Z9^?P=%7L MGA8G6F[R#%:\$ H&PO=V]R:W-H965T&ULK5EM M;]RX$?XKQ%YPO0/669'4JV,OD-AHF\-=:\27]C,MT5XADK@A*3ONK[^A5EZ] MD.(Z:#XDEK3#T3-#<:?:NK1EVN=EKOSS<;E>]XS=1;L><- M_'(O9,TTW,J'C=I+SHIN4%UM2!#$FYJ5S6I[T3V[D=L+T>JJ;/B-1*JM:R:? M/_!*/%VN\.KEP:?R8:?-@\WV8L\>^"W7G__]X%#\'<,<6O1/7?LM"[RU6Z0@6_9VVE/XFG?_(^H,CXRT6E MNO_14V\;K%#>*BWJ?C @J,OF\)=]ZQ,Q&H##A0&D'T!>.X#V V@7Z %9%]8U MTVQ[(<43DL8:O)F++C?=:(BF;,PTWFH)OY8P3F^O1%/ I/ "P94255DP#37F@G]MRT=60?#.63RXBCM7IDH\;B.2 MX8O-XS@:VR@,H\%H@C(\H@R]*#_QG .PNXJK-6JX=H$[>(A&[XW#( MFZ&RK M*,(X<<.+CO B+[R/S2.D3,B2.],6V@7 MQ'HWIDF0S"$ZS'!,PX74ID>0Z8G4 J-*_;Q&>ZB8NLNLV3][H#J]N$I3>Y:S ME,[7@L,J#9*%K&9'P)D7\#^$*)[*JG+!RAPIHCA.9[B<9@%)WS%_O:+*98A+1&5"764KCA3*$1YR)O4#_)9JSKRVKROL2N!)$ M X* U[663;J30D[E&KN&=' M]5ZF6RJC9 [2989'LS!%.9 1]K/1]4M"RP92RI%FW]PEM? [3814N MYG(@(^QGHW]W]=.31)MDTFB^E1Q&-%XJ]WA@(NRGHD/I]&"S:89F2999,^RP M2U*<+=0@/! 2CE\EKJJ2W955J8$SG0H+>XGM>R76C_(V#7K@,^PGM/=Y+EH0 M56C/GHV*<09LTQ2),+'J@X/-LFRQL@ULAOUT!A!ERP>EX(1H\Q*.D\1:.[89 MH9@L+9V!O["?P([507+06ZT[BS9%A22V"H/#*DXR-T RT!CQT]CO'-K*\2@;^(G[\^CNJJ;S$2FX4(GF?1802286&:R:C[\E/5 M2X4H&P6UK#)R2AGFJD3S<*:YK(%W[YSB@-BT% ;!O 4X936%/7 7\7/75+2> M6@0V,T$KEPWR>I7,.FSRMHZYN'(_YQ\IT!.!HIZLBU MPPPO)WN@.>*GN5<+!6+S6&AQLF(O_?Z?[0BL=NJ* BLY>'HT* @ M+P ?V(KXV>IU9WD-TF 7ITGD &>B*^.GJH,%.873P%BM%OF7G:@*+M7//Z4$)^^ZWET_ M.[4H]9+J]VK1'^5M&OM K]1/KS?RI1(IDX4U>O,VP* %)'ID5EDJ!7G2FRR;8.2]X3::!C4XR3QQEPD*&DKH0 M%0E\827K.$[7-,'=%H [FJY33*:Q'@[/6@W,V!BR7(,057O>?8ZHGM>(:?1; MV_#C27;G%N,U";93B=9Q&W^WVFN>\OH."YS[E[M-NBX5D7NK\-M/$#VJ" M^M7$^Z(H#9M!L3.'C6=E@W*V+Z'X.6&Z&M\XF@M@IUF0+*V203E0OW+XQ#6# M1]#H,-E MMTESA8$A(0$SX6#RRX@H- 64 [:@?JU W1C;=U6W1>9_K@69(/D M._,9[1'(62@W<%L1G-F+P&$4XZ7,#K*!GCBUE: ;6OE\V(%FV>9"Z7-$LC6( MUN.NFVV2;O6_;GW;4N(L2N<\>6.,X!M#.#W>R'TRXWY(GK\ K[] M"U!+ P04 " 42 E7N-(:+M<" !@"0 & 'AL+W=O1&(%2 M%)-VZ1)J%VWSVYR(%8= M.[,=:/?K=YR$B$O*9>,#\>6\Q\_K'+#':ZE>= 9@R&O.A9XXF3'%K>OJ)(.< MZIXL0.#,0JJ<&NRJI:L+!32M1#EW \\;N#EEPIF.J[&YFHYE:3@3,%=$EWE. MU=L=<+F>.+ZS&7A@R\S8 7J82;Y+Y::;.+$#DEA04MN'N3Z"S1^(ILOD5Q7WV3=Q'H.24IM M9-Z(D2!GHG[2UV8?M@1^_QU!T B"N>&CH=*[DFRD9C-MNH M]J92HQLF[%M\- IG&>K,="9%BN\$4H(M+3E+J<'.'>54)$ >;6)-KF:E4B , MF8-B,B5/@I8IP\!KNY@G> MX?E6BAX)O1L2>$'8(9\=E]]#@G*_D@>[H-V>H,K7?R??'(L*T'I* M\$TD+S>DH(JL*"^!7#%!4LDY59H4H&K'UUV.ZR6&U1+V5[6:>CW/'[NK;5\G M@G;HPY8^O(R^?BN$EB:3BOW!">NB'NU$K_-'6U2^5WWVZ$_'[1CHMP;Z_V2 M:5V>AN\?0.UC'XO8 8Y:X.@H\$SF.?XY_4>Q1.<4RXF@'?1!BSZX /WB2AD< M;&7@=9;*&8$[_,.6?W@Y_WF%,CQ &@X&<3C,+*HC\5D:/&"K9H97 M(% V .<74II-QYZR[:5J^A=02P,$% @ %$@)5W6J%#F[!@ WQ\ !@ M !X;"]W;W)K&1S]WQ^)"\?.#- M/V+%F$2/55F+J]%*RO7%>"SF*U91<<[7K%:_+'A34:E>F^58K!M&\[9158Z) MYT7CBA;U:'+9?OO<3"[Y1I9%S3XW2&RJBC8_KEG)'ZY&>/3TX4NQ7$G]83RY M7-,ENV7RZ_ISH][&.RMY4;%:%+QM,])4[CC_ M1[_G)>B_8L>MEAOA.8;(7FU;:Q&4!5U M]Y\^;AVQUT#9@1N0;0-B-@@&&OC;!OY+>PBV#8*7]A!N&[34QQWWUG%3*NGD MLN$/J-%H94T_M-YO6RM_%;5.E%O9J%\+U4Y.,E[G*NPL1^I)\++(J50OMU+] M4_D@!>(+=%//><70R=>:;O)"_7Z*WJ&OMU-T\N84B15MF$!%C?Y<\8V@=2[. MT)N#]\NQ5$/5'8[GVV%==\,B \/RT2=>RY5 ,S6\'&@_=;>/'.W'RD4[/Y$G M/UT3I\%?-_4Y\KTS1#SB ^/)7MZ<0'3^7^^S_]S[@3/\7=+XK;U@P-[OJH ) M6C(PL%W3J&VJR]3]!'N>Y\>7X_M]?]FP-/ #_Q U!8RE<9QZA[ 9 (O", EW ML .:P8YFX*29<2%U^@]2[9J'>]W&GI\2@RF$\G!J,+51V$^#(#"8 C 28)+ M3,,=T]#)].>&"X'6#5\4$B(:6KV2- I"@RB "GQB,)C:J##Q@\C@::,"'(0Q M3#/:T8R<-&_5>E34RS.T9#5K:(G>TFK]'M%<%=9"R(;J10NQQ[6NB&#$(\#] M)#5BF4$H+TX,1]@H$OJ>Z0@ 1;QD(-[QSA&QTQ$?YM\WA2C:I7JNLASD&EL] M&],NLQ$D,+)_^JR5F8W 'AZ(=+(CF+BG[HK62Z87H04M&G1/RPW34WFN5@65 M 6IATX^BR)D..J\A_HDUKGSQQ9Z9V1D$ M(]@L!E, 1M(D,:S-(&M)& X1WM-WV$GXII9,Z3/Y5-;.4,W \&[M'$8E,4L; M@(I]<]6&3*5A8C*&.HR\ <*D)TS<$98KUJ"3+KRGSFJ^M7209,0LZV&W6)-JV]'\0IM+8R3Q(JL#4M28M4N&T54_*W:!?3IQ\G &HY[N88[ M=>,_RQ2ILMWM-"] TD[=IP];+L2:SMG5:*UJ(6ONV6CR]B<<>>^AK=Q1K4V/ M:FUV+&N'$>EU(W8+QVLJBKDNKBCG94D;T0?F% Q,9R[>SXQSLS!F( J;>AE MD?/$W""!MO;2_Y!XKR>Q6U!.BW*C#T9>03V!J)M[)A"%K=7%1BGJIGX$;25# M]:87D#AUSL)O[6&;XD[OE792JEI-R$I+R>[@AV^DD+3.E::"YZ93G[YZ;A[3 MVO2HUF;'LG9X0-5+6^*6MOW<["(#9B6Q968<$3,K(508F$#FDE[6$.&=AQBN5-2M] M1'_/MB>R(&&G.G[M=#NJM>E1KTP(+WL)L\?@@[+, (<20(R#( !,@Q M03(,ZG-8AI%>7Y/ F7K=CFI^D( =<[#@$Z=:?W4&'M/:]*C69L>R=AB7?B- MW!N!CVJ_5RQK--\T#:OG/Y!L:"U*VMW Y7]OA!PZRR'0^:J9FS9&;7QQ9"8G M<*#KFZH,M(7]@0-ZTN\0B/M$%TK-D@MPMT_LHU2;LXT!.=LP@#-D:YASK\&) M6X-GP$0$^<9 "4K-\_@,@,4!MM9Z&T4(MHXXH#Y)%)IGF..]"\N*-PQO=K?)%AX/L47\RZN^;>?'?U_8DVRZ(6J&0+U95W M'JOX--UMG/_D74$L#!!0 M ( !1("5>9&RTEO0L $5D 8 >&PO=V]R:W-H965T&ULM5W1DMHZ$OT5%WMK-ZD* 4N6@>S,5"5@>;-5=Y/*W.P^;.V#!SR!"N"Y MMLDD?[\R$(34C1H3\9(9)JW33;?:\CF2X>:Y*+]6\SRO@^^KY;JZ[)/I7K5.Z#,%JM\72V*=5#FC[>=M^&;-&;-@*W%OQ?Y]"\E8>B^-J\ M>#^[[?2;B/)E/JT;B$S]^):/\^6R05)Q_+D'[1Q\-@./?_^)+K=O7KV9AZS* MQ\7R/XM9/;_M##O!+'_,-LOZ4_'\CWS_AD2#-RV6U?;?X'EOV^\$TTU5%ZO] M8!7!:K'>_EF61U=G=3%L]!V5@KM.:7;7VWHU5% M%NMF*M[7I?K?A1I7WXV+]4Q-K'P6J-^J8KF89;5Z<5^K'VK&U550/*I7Q?3K MO%C.\K+Z6Y#\N5G4/X(7G]?99K90UB^#;O#Y?A*\^.UE4,VS,J^"Q3KX8UYL MJFP]JUX%OQFO;WJU"KQQWYON@WRW"Y*=#'*U4M-V&T;P85-7M<)9K+\$__T] M7SWDY?\0R+$;\NU,A:YZ(5L&'[/%K*L"'&=/BUJ]=H!.W*"?\EHUOTI?DI5K M%5_EPDJ( #^,WP=OZ[I/@J8'T68A-GARJVJ,UE]]O=0'!QT_MV/!6 MN?OK7\*X_W=L"O@$2WR"29@+WC MA2(TK2;02KV;87]@FB70S,J"]QB.[*Z"-E8^$M) P$CNG6"0,;X7XD*K8F:I_J9OS M[8P/JKRNE]M;E.8.Y=/]YXIJAQB$TV56R&.G][;]X!,L\0DF82KLVGER9Q1Y M<"CRX.(B8X4=4#-Q/ #O-V2CD=44T,AN"M)"DJ&D1"A&PH:'A V="?M0S_-R M>^DH\WE#$[_EZHY;O2,R.20%A-H$0W%T,J/,\BV_4S&E!(Q&9D,^YH\]KUVZA[.U:I[$^,RC30K M8F;/0-I$TO&D9#QFZHYX=W@)X?D]*P]WQ@Q-88@PGMB^"7 [;[N0>45+O*)) M)!^ ]?CR:)9:4]OP/&Y[5GD99#[V37N($#TN(FZW"#0+8Q''PNX3! Y6 /2^@#;N>MN\4G6N(532+Y@-WBR:-9:DUV M0S?;;2,3[*&<.D$(R1\F%"!FJ%* V(%5!4:%]0KBT"$6A)I-AFXZV>YNT W6 M31+K?E_Z!8 CM9,NKS#,^XP$=X=\8C9:R8T"P>1&$7VF@GM MS*O;/M$P,FS=A&"L/V"C_HE^T;I Z!8&+F9DD%MCC,PGX9]X14N\HDDD'[!? M/'DT]QJU;L'7;DHQR-Q0NO:(E7-(DD ^S87D.[8$?;\F[MHLW>%(,:@:WN,62_ MWI[9$\3(UO9H$TE'DQ+1F"G36@5S:Q7)][R<+JJ\$4*K[9&5XJE)616L\ZTZ MNC\CLZW7NCEM\UB40?YS%-4_D,';2XT[OM;]XU7.\(HFD62 &E]#S6!:S6!N M->/7)@,Z :"Z +H,2@L,-!FI8R2TB:2#2=W!F&G5&@=S:QR_L@_,R+WML=M[ MZP[R*F-X19-T,E)?#LU2:PF#7;[ECY8WIOL#,FYPJT9ND2>TB:1C29VQF"G3 MS)^YF7\[!9"1V]ICVF1"FR2(23<486PGC41*220S<9I',S>/=LMEC-XYITTF MB,EPQ$9VKD@@29NDE"\S39HI,WH+O55+CNB6A*2Q"WJ2W.9.:!-)!Y.Z@S$/ M/VK.R<_CG&WE. X9'"+'N9VW7;&\HB5>T222#R O^/)HEEIS8W[>WOY9Y0UI M>8$C>]R('(>8H7(<8H?)<4ADV)%7".:2X[AFGOR73X3C"<6.A ^9G5*O9\*] MHB5>T222#]@O5SD7?G0P_**3X7AYD:/AH%^07>ZX/[!78L1,>16CV.X7:->- M0W! _+P3XHA//A#1B9T^KHDFO\XA<8Z<$A_9^?1Z3-PK6N(532+9 +URC:/B M7#-?[N^P."?/:(\YY']A7\1VI] 'QFD328>34N&82=,]C6*\=N_ZT[R"=:XA5-(ND %?3DT"RVYO_<+__G-/_G".5F M46A+ (@9Z!%: J#C2SO:)))!^P7:YQ M-CO2S#@Z^VPV7=XSSF9'R-EL1-Q&S%!Q&[%#Q&TD,*Q=$)\.<3O2A#-R$\Z6 M=X<^CS./O:)-O*(E7M&D5[0T@@Q:\!,73J'YLZ"?.#]=>??@MI7WBC;QBI9X M19->T5(!Z3D+8W;BHU^$)M7BHD?FC[?8T9L0@3PR']L49NQVWKK:7D^=>T63 M2#[ HNG+HUEJ+0>(LQ^9I\M[QB/S MD$CV-A:RB(&6,1"^T/[T#LNK9/B<2% MK)F8R[C/AB?63*'% 7'1(_/D+;M 'IF'C,SMO'6W>#UC[A5-(OF W7*-0^9" MJQ;"K5JT860"2@2P6Z!&@#$RQ QE9(@=PLB0P+!VP>2+TXQ,''T&VV7[ZI0P M+R!AMY]GU0NO:!))!FB5:X@70HL7PBU>M/JL/?HDN4">W0Y'H%'H MP^2TB:3#2:EPS*1IM4)<<\><["#(X9FM:+@#;-U"7A4-KV@2R0:H\C4$#:$% M#>$6-/R?GQ!070"-!J6%>&AK'H@1Z#/Z7#T=34I$8R96JQS"I\HAZ(^JHTTF MM$F"F$3VP\@T3.J&,3\-5,L!\:_( 3']<7,QN94\04S"<#BT[H@3&DG2\:2D M,S-1FCO'U^'.\5GV\]>>F>N7.7M$DD@_ !GQY-$NMN7/LCSO'9W!GQ ;C MSH@9RIT1.\B=,2-(!C"7&'?N'7T_0O,%&XHD?5FH]6J9/ZJ!_=<#59[-\K(Q4/__6!3USQ?-MS 7B$%" TB0 !@ !X;"]W;W)KUV6EK@7PZ'* M5VQ-U0>Q815\LQ!R335\E,NAVDA&"[MH70YQ%&7#->758'IE[]W)Z978ZI)7 M[$XBM5VOJ7SZQ$KQ<#V(!\\WOO#E2IL;P^G5AB[9/=._;NXD?!KNM11\S2K% M184D6UP/;N++69*8!5;B?YP]J(-K9$R9"_'5?/BYN!Y$!A$K6:Z-"@I_=FS& MRM)H AS?&J6#_6^:A8?7S]I_M,:#,7.JV$R4_^>%7ET/Q@-4L 7=EOJ+>/B) M-0:E1E\N2F7_1P^-;#1 ^59IL6X6 X(UK^J_]+%QQ,$"C'L6X&8!?NT"TBP@ MUM :F37K,]5T>B7% Y)&&K29"^L;NQJLX94)X[V6\"V'=7HZ$U4!06$%@BLE M2EY0#1_N-?R!:&F%Q +-J%JA'R'B"GV/>(7^NQ);1:M"O4=OOAN3+/EH[M[R MLH3(J*NA!F!&_3!O0'RJ0> >$!FZ%95>*?0#@"F.UP_!H+U5^-FJ3SBH\%_; MZ@,BT7N$(TS0K_>?T=OOWWEPS5ZO!OO5',$C>Z<3JY?T.=WX'^%VIF(S&H[W4$;!T M#RP-AN:F^ .*KLY\+6"CRD65\Y*A:H_8W#>? M2=F1M[*]M[)@&#\S4)IS6N_(58'H6DC-_[0W?);7ZM*#F*59-.H$UA7*""'^ MN([V2$=!I/\62J&W2^"U=PBP%EQMA**EV=T@A! X_?0>;4I::?2&KCFS$.FG&_HI)=&-XJ$.0BD+GJ]?78 8!Q M2CHH7:$X&?7X>K('.7DA*Q9,2D#X7"_TD7E98>*Z*,FR#D*/$!GW((RCEO:B M(,;9BE9+9FAK0;E$.UINF4D&*'=3P1!WPPXX.TXS"'6 &4L.-AWE&*P<9E*+#F=\[)_#VK4GVD3.I>V8V?@UADX&,TO M+&=\1^S:;"ZB02>L4DM*%0S5 0=79Y MP2<>5&22=L%[Q7#4@[WE[#A(J0L214D/NI8@XS!#WN2YV)JV)^1 E]22<>8@ M]-!C/"9]*=IR7QPF/T HMZQ-42]"E] NLGCB5+DKEJ23GMXQ;HDO?B7S20;% MOO7[T,=ZL5,JKE1,LM0/$+>TA\.T]XNH+KYM:NL>?MQKPFQIYT#CNY: MX8I=D+Z(M-2%\4FS( >:4*\9(G"0$D\E\'-I._9"2XXX3(XW1<%-\MFAJ].0 MO[?)&.S'L8<5DXG3BOG$QFE?+X9;[L0O<:?(&2N:",)885O)!7^$1.S?[K'+ MAD[AN")]3(];ML1AMMQ735,HWI3S O;P8C))NGNK3PQ/XJ2'/W'+GS@[J506 MO*(PG+^B5(*\?'*IG$G;L1=:GL9AGCY.-EKLP ?0]MA3U9TH=\8?9HV=9F!S MY_Z*<3EZ$KE;GBM%DD.Q8QM:)L=A)K^C3\WAXHFH/>R>>F![Q$;]L%MZQV%Z MOY,PT?(-+4V/M#\=+46UO-!,KH%/YW[8'LK''M@OB1T?-K:D3\*DWWC[U/&6 M>%C;XVR/6!_BEMA)F-A]CJZ:>F>H9%1!HLQ+OK3@O9L5\;%UMU-]0>@8?4OI M)#R-'EV0RY\IFMM(B_PI]23]J=_K,QH['72$<]X ^.)(.,_!!DBA-]18F MU2?TP/5J)?F]HH^!O%:X1EO?,P2>4 M]M5XR^8D/ TWCP"D+>:W!:NOWIF&Y#03W'EXG#@EXQF:TS3IJYJ6C$F8C&=] M2!'5:,Z6O*I,=IE39B:Y\)>(9ZA.G-[5(Q7#O[[<:JF8A*DX: $S4V 0N\NT M*?1Z7>P>J724]4!OZ9B$Z?C&]#X:W4*WD -5_';+UG,F?_?B#&HZ^XR2%7E9T:[9FO;6]L,ILOI)^. M$I?PNUN%1P2ZL%$V]J=KTK8%2;@M^'QS_ZI<#:LY.4K_Q&"?M&U%K[@-N)U<]S\#C[I'4\.#MD#632_O2C$+VM+=^ MI6)_=_]BSHU]':5S_U-\.:M?KVG5U&_[W%()5*>@,U^ RNC#"*I'UB_0U!^T MV-AW4.9":[&VERM&8?HP O#]0@C]_,'\P/XUINE?4$L#!!0 ( !1("5>R MJ,(SU , .H( 8 >&PO=V]R:W-H965T&ULC59M;]LV M$/XK!Q4H.B"S9#G-BL0V$"<-U@+=C+QL'X9]H*631(0B%9**G?WZW5&*G&ZR MT2\VW^ZYYYX[\C3?&OOH*D0/NUIIMX@J[YOS.'99A;5P$].@IIW"V%IXFMHR M=HU%D0>C6L5IDIS%M9 Z6L[#VMHNYZ;U2FI<6W!M70O[LD)EMHMH&KTNW,JR M\KP0+^>-*/$._4.SMC2+!Y12V\6,ZMV8+ETX3&@Q!JL"9R4G-2[KRE74EV?OF;\0A3^!E6 MPDD'IH"U18?:"Q9M'GORP2?CK,=;=7CI ;PS^&:TKQQ\UCGFW]O'Q&T@F+X2 M7*5' ;^V>@*SY 32))T=P9L- <\"WNQ(P Z\@1NIA?,5J^?S<]2RZ.D#T=R)X>0U_^;DNAY3\A%R=P9;0S M2N:BJV>=?YX\[!2)GO\>RS6XVP^4*&,E@G<5PA2 M>[2RALQ0YK7#G$<]7YH4 S6WIT8X#S=KN,>LTD:94J([@2\ZF\ '3Y#OWWU* MT^3BRM2-T"]A-KWX"9K.-8%6:%&2,I5X1M@@:MYKA*6MIK6N%=ISJAG+M@J# M0Y[<8=9:ZH(79-!1HVOWR-DMR0(J-4"0%0KBUQ"#0HCK'H<['@'UED6SD[C]' M?V1W?/W_7D)0S+R3<:BKT>1)S6%Q7Y#^A9XM7]$;FYE6>ZE+0I!DT;#H)6JT M0I&,M(\-2T"VG(<'+7D6BC6H<%E3#66"]'YJ):69GCI-O8$=*#S070R55)LI-J70;Z_*'20 M8N- V/,AF\X+)_6UL$:%8KM#="P^HVY[ KAKN%P*"A*TIA\$O)# MTE#;"0C4G[M$N5"S;'.H&,9*=C:!6UJB*"_WR5M;HVF<]0'<\ST#NE:$,/:J MQ6_Z#R6P#%W608#K6M&P.C3RRZY_[8]W7P'?A"TEA:*P(--D\LO'"&S76;N) M-TWH9AOCJ3>&844?(VCY .T7AA[X?L(.AL^;Y;]02P,$% @ %$@)5S!0 M[+Q,!0 /@L !@ !X;"]W;W)K#RMKV>#0R1<4;9H:JY1([2Z4;9K'4 MJY%I-6>E-VKJ498DDU'#A!PL3KWL5B].56=K(?FM)M,U#=-/%[Q6Z[-!.M@( M/HE599U@M#AMV8K?2M%P:822I/GR;'">'E_D3M\K_"7XVNQ\ MDXOD7JFO;O&N/!LD#A"O>6&=!X:_!W[)Z]HY HQOO<_!]DAGN/N]\7[M8TF,@ M:(0,_^RQS\..P2SYA4'6&V0>=SC(H[QBEBU.M5J3=MKPYCY\J-X:X(1T1;FS M&KL"=G;Q05E.&1W2>?&M$T:X5!EBLJ0K9,M883O-3T<61SF#4=&[O0ANLU^X MG="-DK8R]%:6O'QN/P+$+]'A^TX.:9S$E"79^ 5_XVW<8^]O_$+< MAJRB:R&9+ 2KZM7L_$D/TGGPX2N5>?81$)2.I^/8_I<<5JJ&H-%R!59 M=E_S?KJ(_UQUL;R>P$CR@)1.:'EC=<6?H M58SAU@1-#1@N_EJP>U'##,=AOVL@=T.B)/AIF,1<G/8",NS:19<@T0T24S50B$67+5=YGXC;)Q/$EF MT4?@UEN03S2>'P6+I5;-)OL'63S+$WH3?58617B>([A*XW0RCFX[% :14:M% ML9O7Z+PH4!AD1J/"XL%7 69Q-I]'[^0#PE<:1(CS-.D!%1VPX^0^HUD*]QKW MC+9/,;4U0,4^NQR9;EW^Z"B>)GETZ>>A:^2)0=S:,_N8M1NUGN,M^9 M;=VSV;R'WPOR-/I=J7(MZIJF<9HG?0*1/&G%4OA$]+J^(GDR_9ZLECUYA8/I M-$/N(=<=:,,?<=T:\.-@,IE!_DX")P>W'X,,HBL>:K\1YOD M\LV0SGYJ^'3H&Y8U+@$NN9J#'&"X+S73$M3U?='S$G12*XE.+N%<@G-[^_17 M>)YA&1+X=>B?,&2V8W[O_'#4PEO&C5?J).M*X5(!_E P=R>X"I6^450M2I^K MK5<7@.-:WZLP"M!^3$_XC>[$XV'CKDJZY5JH,ER8T3/5Z.#+!LB;Z([5W/$I MG"*WC#GD@JZ__W79&CG3=-X^X_]W(SY+LG/&^VTNWC\#R\B;ZKAYCPS<*JUK^0[I7%?/&?%1ZX7#L%["\57@O]PAVP?3(O_@=0 M2P,$% @ %$@)5Z,HWAH=!0 2 P !@ !X;"]W;W)K[DD73_L]H&6 M:(NK1+HD' M#&Q1B8;;(ST7"K],M6FXPUNS?A4+UPM ME;@V8!=-P\WJ0M1Z>=:/^IN-&SFK'&T,QJ=S/A.WPGV=7QM\&W162MD(9:56 M8,3TK'\>'5\D).\%?I=B:1^M@3R9:/V=7CZ59_V0 (E:%(XL<'S9QMP=YE%?<\?&I MT4LP)(W6:.%=]=H(3BI*RJTS^%6BGAM_T4Y #._A1MP+M1#X+/1,20K9Z<#A M"20W*-;6+EIK[ 5K&7S6RE46/JA2E+OZ T36P6,;>!?LH,%?%^H(XC %K+X M@+VX0VWCCN!-'-VG[^MN62_.:J88SOGA3CK8TE8 M8>Y%?_SF592%)P? )AW8Y)#U\28E4Z,;N,3 &N0P\L-5<.F9(0S\<2<>'%S4 MNOC^YS[\!T_8C_\M\F$/&^"N$HBBF7.UPG+T^W]C,,U:=%D)++(U9Q&9GCCL M"18* HZ\UE/\.D=7I!4ES+0N06-WP#-E(8Z\==[HA7(DN3':G5-2!Z!2QNRA M)!JULA2&>V2NXLYO;^")AWDKJF$B ',K78TF\%4J_%A47,TPKGC^#B#[")$] M^C>')?640IL2B23:M+30C$"S$MDUKU$Z MY%;S%DCK)%=EYR587?O [#.]R:6%MY*BK!<6=>V[X]Y=9838*7:XE0\[&SVL M7>%K=[/H?<%+QO(V*,>^I.F';5>]:Z/+!67N-8R&09:%N!B.@BQGN(A&<1"G M?I6.@BC.>W=:UQ0F\N@S+RJDMUD!2T? @F&" 0_2- ;48DGO@YKA9V%(OO,^ M"J)HB+]#EI+*,$7A"(7OM,/6H#J\>&08!F&<$[ DB)/8X\F#?$00HRP-4E3N MBG3":V*%A3O9T('/*>V)V_#5X81SP-*IWR-3E]R49*;8'%%+/I$UVL%3_-TF MW(^%A?%4:^?F&%08*Y&_LF2O/=)%3@I6$18H@ZR;+=N,10"[^2R[7!;MK$@2B-*6S[LW3SO M!&]9D&8)O*-%&,7P;A\\HT&'RC MQBC5O9:%CU91+-!'/G78)/>0(MCI9!6WVY1S:X6S 1HKZ@5EBIH.5B85+ M/ MVG 2@:S?B4[ -T??+DL9V,+Z_R0\]WK_B7]? M%=*U]@GN?'R1@RRGFLR3Y_1[?JT$OA6WV6EOB,W'/; MS!(=DYQX&07Y$ GZ$NRGW&0C:B>,Y;!O:A@\FN[PP)F?88D5>%>V@UZWVXW) MY^UTN!5O9^S/W,SH3J[%%%7#HSSM@VGGUO;%Z;F?%2?:H7=^6>&H+PP)X/>I MQ@%J_4('='\>QO\ 4$L#!!0 ( !1("5>.0#AU^@( ' & 9 >&PO M=V]R:W-H965TZTE9: M!Q-#&DR,'P^(!S>Y--8<.]B7=?OO.3M=Z$0I+['/_NZ[[WSV9;HV]LZ5B 0/ ME=)N%I5$]22.759B)=RQJ5'S3F%L)8A-NXI=;5'DP:E2<9HDIW$EI([FT[!V M8^=3TY"2&F\LN*:JA'U3VNQPENDK_6-92ON6')9 MH7;2:+!8S*+SP60Q\O@ ^"9Q[;;FX#-9&G/GC:M\%B5>$"K,R#,('N[Q I7R M1"SCUX8SZD)ZQ^WY$_MER)US60J'%T9]ESF5LV@<08Z%:!1]-NOWN,GGQ/-E M1KGPA76+'9U%D#6.3+5Q9@65U.TH'C;GL.4P3O[AD&X3W :$P?T;G&V(5^TY.D_R$_AVF@J';S3.>;/_6,6VJE-G]0NTKV$'QI] M#,.D#VF2#O?P#;OLAX%ON"=[!V3@4FJA,\FIWY*@< QN5[XMW6@WG7] $U>+ M#&<1OQ"']AZC^,:C@@_ON #P4*9 M[.[G+OU[(^S6?\C7X_^7XSDD\Y#"0^06)#/\EATY, 50B5 8Q1"I5W H-:^8 MQ@F=NZ-)C^N,OLX]7V=?[+07HM9"YNQF)[TK3<@2"0Y@T#\;I&%,AF/>R$R% M0.(!71\TMS6.QB^]8688]P<,/6'@L/?1Z%=!I]3W3.1E<'0HVIO@+=\P)$ET M$XY>2Y^8R'/I MX04U; CGV&?0/TE'D([/_@(K*992!0%PR+#3!([@D)$\[+I.\587J-"N0J]S M?.J-IK8A=*M=.SUON\@?>-N+KX5=24Y28<&NR?'KDZC5_F20J4-/61KB#A6F M)?\2T'H [Q>&7];&\ &ZG\S\-U!+ P04 " 42 E7J M%PT4$ "F"0 M&0 'AL+W=O.@;[8(L4Y<^;, M11ROM7FU&:*#MR)7=A)DSI7786B3# MA+W2)BMXLM"F$HZ59AK8T*%)O5.1A M-XJ&82&D"J9CO_=HIF-=N5PJ?#1@JZ(09G.+N5Y/@CC8;3S)9>9X(YR.2['$ M9W2_EX^&5F&#DLH"E95:@<'%))C%U[=]/N\/_"%Q;?>>@2.9:_W*BU_221 Q M(9;WPHGIV.@U&#Y-:/S@0_761$XJ3LJS,_16DIV;_JH=P@ Z\(0) MRI68YVA!J!1F.>5+J 2!,@]W!E/IX$%;BW8<.O+,]F&R]7);>^F^XV4(7[1R MF86?5(KIH7U(C!O:W1WMV^Y)P,^5NH!>U(9NU.V=P.LU,O0\7N^$#!:8R- >)O)O?QP(ZZ?)X M0&=4./^C; [.)IKZVCK0"R#6=)CMI%K"F52THRM+:/;\ND691I_I>[(NYA1@ M+VZW..V<^VYKEB2ZHB31A-BA?_PPZL;QC?/"_ ##?GL4C>AA,&B/!E'K 2UQ M/>"9U#SSFN?993R"<_KK]>"\M<>Z#8K&I$>,KJ(:,8XOX84BN--%*=0&I 5\ M*[7%E,OI$+@TDB:?S#<4H='5,@,K6 P2H30ZK1)7B\CZR@3MQ3ZRC^KRQL/3 M2"-\1MT+I$#2+=6Y7FY\4.*_RC"[%%UP MYUX4#,VK8\*X3#@*9 -*.Z_ZMXIT_@ E:"53KG(P]*I#"J^%21OT$_7DL;WR MG&(2?F%T<9R%!M]>Q)-!N=JVM)NDTY$Y[C)%:^&5;+IDKS'>[\36LWP[F,B- M?>N8?8<\+J52+ :7*A6&3JGZN3^H!^*KUB.+X[_39[/T'\HJS\US[[@A_EV/ MQ=1;$ ^N6K.BEF%MI'.HR -E:$G7">N^4_8LCK@MXW[=E7K%%6IA!)T#LJC2 M0YHQ-_]PV(=CLS?<^W92*2[]#8'G$Y&J/Z/-;G,)F=7?WF_'ZQO,%V%()@LY M+L@TNK@&PO=V]R:W-H965T[-S\+:C9V?F=HKJ>'&,E>7 M);?;"U!F<]X;]YJ%[W)5>%H8SL\JOH);\']6-Q:?ABU*)DO03AK-+.3GO<7X M]&)&^\.&GQ(VKO.;421+8^[HX6MVWAL1(5 @/"%P_&\-EZ 4 2&-^X39:UV2 M8?=W@_XYQ(ZQ++F#2Z/^DIDOSGLG/99!SFOEOYO-%TCQO"<\890+?]DF[IV] M[S%1.V_*9(P,2JGC__PAY:%C<#+:8S!)!I/ .SH*+*^XY_,S:S;,TFY$HQ\A MU&"-Y*2FHMQZBV\EVOGY-^.!';,C]IE+RWYR50,S.?LL-=="#D+I#QD:(VL:,NSK/I9!$(K=P7X,6VY"9M5'8/52!RIHUQA2" MEGJ%[N(I0W)-BDU_5X;>8,JD&Z1$3IXE$M A4#]A/WJU)4Y2[YZ6-(E\J:!) M[X$(?&%-O2JP=ZT%%;F$>%)*,*%\7Z)#> UV5ML429ZZKQF;-Z].)N,/GZA/ ML)JR"EVJ9 Y-@--G 99;)KMIVPAA*7"[]O!W@*W^@AO5^_8:S:>](_''^G' MK/_^^(3=Q+0T$>1,&WTD3%F!E\&ZXMNH4"?]V>0C&X_ZH]D499Z=F)$';J?LI])&C4'5&+81RQE?X9I7F]?5X M-!CAG4ZI,%&=ZI@U1 WQ.&'3, %=KOE+1S'6HD:AIE"$,'4ZG$$&W>OO%M%) M6L$L\-1N\("7? .Z8NCBA#]QTMBGL%O14W@@'&'Q2SR/EX](N$4)^@ M3-J0\B@RSPUIM1%2U%P4_J@UP8H$ &GB,<+77*H@/ZGLB=S@I:O=L',E+\&N MPH>'8Z$(\7;>KK;?-HMXI=]MCQ]&U]RN,%\H9SF:C@8?\%/"QH^-^.!-%2[X M2^/QR$'[Q3?_#U!+ P04 " 42 E7X5'I[R8' M #+$ &0 'AL+W=O)E-RVJ^Q>,IF:I%VVN_,P-0\0"4DHDX0"@%KFZ^=<<+'4EI5Y M:)D$[W[/7=#7&Z5?S%((R[9%7IJ;_M+:U=5P:-*E*+CQU$J4^#)7NN 6KWHQ M-"LM>.:8BGP8^GX\++@L^[?7[NQ!WUZKRN:R% ^:F:HHN-[=BUQM;OI!OSUX ME(NEI8/A[?6*+\23L-]6#QIOPTY*)@M1&JE*IL7\IG\77-V/B-X1?)=B8_:> M&7DR4^J%7G[+;OH^&21RD5J2P/%G+3Z*/"=!,..O1F:_4TF,^\^M]"_.=_@R MXT9\5/F?,K/+F_ZDSS(QYU5N']7F'Z+Q9TSR4I4;]\LV->UHW&=I9:PJ&F98 M4,BR_LNW31SV&";^.PQAPQ ZNVM%SLI/W/+;:ZTV3!,UI-&#<]5QPSA94E*> MK,97"3Y[^X>R@B7LDCTMN1:7Y&#&/JH"23>!^>%/C/JO18Y ]8Z(?1"7E1YW/DY$4G?#;, M*O9%EKQ,)<_9D^56 &O6'/.W%C"IN^J@+(_1:]&]_^2F(_0\G MC!UUQHY.2;^M\W+O\O+ =V0CN].:EPMG+_OWL]A:=I^K].4_QVP_*?VX[>< MQ+[:?3@[J#=5,"&V7/2F0:X++6J%DLH M7),"MLIY2:=P%;1H!";5<@9Z6>+%G'N)3@ SM*'VI V?8&0M\O_L-V]_>DR-2*R>XH0V"B,4^ M/B?TV'M$7K1,26--_:V4@'4=Z?/^X],WT[]@T\F(Q6' @L%D%.,7%=5[5I;" M]9X?9T0V3? WF01DSR <1^YTE$0NT]8)D"78\,*W; ;$S*%]#W5-XI"KC'"7 M'69M+U< %*G78DEC:BU:N93#=VWDK]5KV(80OEIIM948,0*X/4O&(=2KRE Y MT+^S,(I?3UI\6(> +L==K@;, C'SH\E\=GYN6==6VND)CW"D%6:*HHL>*-G MT&3SZT'N2<5MV; _W31&Y.^H6A>"?=X*G4KX]:"I79RC(]09NGA+^RAHFR%C/Z*<-(RJ M )E_R3GX TJ3'/![A8++1;4VWX#D43^4_;=];1SAY\Z7>:B][6R@$R9D4!T MBS?%S*;AP$_&0&DT]::3WJ\4-I@3A(, X VBP$/)M Z@QX7C03+RV06"X,7) MC_(/,Y],!J/)!++'B1>@G#P_=B4[2"*_E#*"*K1I$WGK(Q3,/+ M=#"%RN^H7U&#D_"2UJW#M=N_->'LT CVM:SIDQ9#7\1,5X2.8-0>?6Z5K!7Z ME,P)(E'LQ3^S(1OY]+>CR @5"WZR!\*4A^E>;F<4Z5(!%63@9IR%M7,D3?] M^14;*X>-LR (O/$(7\^"."&W.^&04+#S!@"Q%X(F]B8=@BYY@Z"]P; MY!I_10N:MF=Y[-.)UOA>:V[F.:.1]T.GM*XNZU:)L600DOH2YCKE##%OAH8B-7Y2COL.=F.<2.XH$_]FGH M>].@[=7KNGV1<2$+C-/'BX'27FXX'DX3F_-CU MJCM[%,B9Q(XF*'P#5@$N[7HX<'%REFQA8 :W- M:9, \@XV4EI]4:BRJ J'/Q)99W*[5QK==.&%JNH2QWX!0=:M'LVB2/+0-FC% M+RL7ZWK9<*58!ZI>E[&P9NUV^>K'_X7&.U?S/^#QV)UEN'?!+(1>N<F0W[ MZ[MF=]K=U._J"^HK>7W-_YWK!88ER\4 MEX+#)2+ ][G"/MV\D(+N_R]N_P=02P,$% @ %$@)5T$S0#2M @ K04 M !D !X;"]W;W)K&UL?53?3]LP$'[O7W'*T,1# M1GZVS5@;B<+0F,2$@(V':0\FN386B9W9#H7_?F>GS8I4^I+?O_/GN]E: MJB==(1IX:6JAYUYE3'L:!+JHL&'Z1+8H:&Q,S07>*-!=TS#UNL!:KN=>Y&T7;OFJ,G8AR&L<%6\BCEDW6NRKD76D)88V$L M J/?,YYC75L@HO%W@^D-1]K$77N+?NEJIUH>F<9S63_PTE1S+_.@Q"7K:G,K MU]]P4\_8XA6RUNX+ZSXV23TH.FUDLTDF!@T7_9^];.YA)R$+WTF(-PFQX]T? MY%A>,,/RF9)K4#::T*SA2G791(X+*\J=4;3+*<_D/Z1!R. 37(EG%$8JCGH6 M&$*V^T&Q05GT*/$[*!.XEL)4&KZ*$LNW^0$Q&FC%6UJ+^"#@]TZ<0!+Z$(=Q M<@ O&EYF;[T]7+H?SG;*J6Y9@7./6D&C M>D8O__@AFH1?#I!-![+I(?1\*\4K7'!=U%)W"N'W/;X86-2R>/JSC_!!R/V$ MCTGX'=G?V(R.U/:&2F &3(5 [8L*Y!(*J0T? DK*4L-4>2/IQE,_&R:C>ZE(77Y<(=',$G\ M,/U,QCCQQ\D$]DD4[+10@VKE!H6F6CMA^FX:5H=9=-:WX/_P?I!=,[7B0D.- M2TH-3Z9C#U0_''K'R-8UY*,TU-[.K&B>HK(!M+^4]%HWCCU@F-#Y/U!+ P04 M " 42 E7?X'"#D # "!P &0 'AL+W=OO&*B+10*HT2W;6=M G&S0%IN%L>GQ4/2!D<86$8K4 MDE2<]-=W*#E:-_6Z#Q*'&Z$- N_MK:]#$-3UM@P4BC=.:#!9?*@U*/;_%PM_,@%A )+ZQ 8+4]XC4(X( KCZQ[3'UTZPT/Z%?VV MSYUR>6 &KY7X@U>V7OA3'RKJ83I_[ ;=//,A[(S5C5[ M8XJ@X7)8V?.^#@<&T^@[!LG>(.GC'ASU4=XPRY9SK7:@G3:A.:)/M;>FX+AT M3;FWFJ2<[.SRL[((,_@1UIH:K>U+ &O!I 4F*_CXM>,M=<#.0TN^G$58[G%7 M V[R'=P"[I2TM8&/LL+JW_8AQ3@&FKP&NDI. O[2R0M(HP"2*$E/X*5CXFF/ MEYY(W(!5<,LEDR5G NXML^C2-"RXW#N[ER:EI6X\.ER&-1/Z"_?_Q 7 MT8<3P69CL-DI].7)YL --Z50IM,(?_Z*SQ960I6/?QU+XJ2;XTF4 - M:1QXKM^NZ8GWR>&ZCS>M5D]#J^ =9,$TS88UCKU5QT5%\.:_JFD6Y,G4+5E6 M>)^0;G.MQ!NE23!+(LB#/$J].U;65"/] N]9TWXX2"I/@SQ-(4^")$V]VTY+ M;JD! 6SXLR-,0'DW;6=1F[VQ41N[8]2D(LBSC/Y9%'O75!RKNV%$43THD"U9 M&Y@&V:2@8)))XKTI\)OZOH,XSJD$>4]%05$4WE59=DTGZ#Q7-*.HF73 ARGH M2M@H;?G? ^,LSX/9K(!SHI(@GV5P[GVFQZ#]'Y_YC%S.'#$-HDD"QTYY>#"7 M&M3;?OH:*DPG[3"B1NXXX*^&N?9-?7@=[IC>)NZPL:KM MI]R#LC0S>[*F1PJU4R#Y1M&%WV^<@_'96_X#4$L#!!0 ( !1("5?-,M>B MJ@4 )L- 9 >&PO=V]R:W-H965T&RR)9;"C-0**WHS5[H4EJ9Z M,38KC2)W0F4Q#GT_'9="5L.S$[=VI<].5&T+6>&5!E.7I="/%UBH]>DP&&X6 MKN5B:7EA?':R$@N\0?ME=:5I-NY0Q+&RU1AW#^LF[V)/X2L-E:5K3 Q*&75 M/,5#ZX>>P/0E@; 5"!WO1I%C^598<7:BU1HT[R8T'CA3G321DQ4'Y<9J>BM) MSI[]H2Q"X,,;^(!DG#D96T+E=^.L1;AH$,(7$%+XJ"J[-/!KE6.^+3\F-AVE M<$/I(CP(^'M=C2#R/0C],#J %W4F1@XO.F"B :O@G:Q$E4E1P(T5%BFU[%Y[ M&[AX/QQ7R;%9B0Q/AU0&!O4]#L]^^B%(_5\.D(T[LO$A]+,/: RB!Y]6J(65 MU0)$E;?,L8T1_/49'RQ<%"J[^WN? 0=5[#?@B).@A?^\1+A4Y4I4C[ 4!M06 MEWG+I6@V4U\ -9_+#(U'B5G5UE\0RUI5[1RKBE M;2G\5LL5QV:TX;.6=DD;05;2LX8ZA;.JLF"? M[/B9UKD^.0UJPVJAIG35Q:,SBR4A;_2SE+.MT<,$FVDAQ:TLB *^K$3=%G(A M7+\A3:6XVV"MQ*/+-UC5VM2BH=LT?])""[B%I==I+.,;+* MBCI'3@^VUU48I242>TH)WD*)0J2>@-=+I"!:D.P_850E;HO'+B'LDFRBMVM9 M% 2$.I.LBE<;#=M.(G>(PB@0^3_4)8D:)R)G++5DU!H="Y%ENJ:A=NET;G:B MU:9PKG9S:'\(,K)2&LM^9)RY*NA(XY0Y4 =#U\'>(H7GEKP; M!=Z VQGWM'#P5-R-DI[F5Q!$WB0)>!!ZLS@J:P9Y5'IXQF_]#NT$N2V#WC9+JC>*](ZD,R:PG\!W(:-,A),#E, MIU#5XHW+,*(?>$GL?.%[Z2PY1.E)+ A3")+T95H[&M)TTFB8)L'@1CYLG6== M+ ='KV KS+UXNCY%>67L\0[%S*V=ETI;^;WI"Y0]32NB@6M%FZ!%OOL;O*^( M&W*>57N2,(3GX60M$'CQU*?_R \&7X4FD0*WWBQDC36NNEDY)9G5A_W3,X8 M;4Z51V>/5F7O=&K+F;G&OHNI%TRC-B+[1'>.,JJ8*!S\Z2YRF+\1U!;I7DK- M@R^W3]YVKCMZ1*&YUC?QCD8^N9#^>E3C$94HK:7/07-I,O8#T%9\0@E'= S_ MV#YZ2-$HCMSZ)*4']V:Q6&A<<(.=UW1R/CMGV-6M77R$SZ%K2AR83F&G8G#M MS*0SD3>[X+V"IH=X\23B<,:04D2]61KR+&EFD]F$9RF$,^X;X8QG$Z"YYZ?Q M@*A2KY^3S^B*29UMLIUD'=U@%E%V>O%L.N KT#%T57 T@==PQ"&-X/7@:O=$ M>UXAQ'B:\G_L^;,$]EW*QKT+RXK-D3J+^:)(,F_K>3*Q:N>OWK;)TF7?#)7T]H>8-]'ZNZ'[:3EA!]SUV M]B]02P,$% @ %$@)5U['E"NE P $ D !D !X;"]W;W)K&ULE5;;CMLV$/V5@0H4*>!8LGR)L[4-Q+F@*9!@L4Z:AZ(/ M7&ED$99(A:16[M]WAK)D.VN[[8MXG3-G;APM&FUV-D=TL"\+99=![EQU%X8V MR;$4=J@K5'22:5,*1TNS#6UE4*1>J"S".(IF82FD"E8+OW=O5@M=NT(JO#=@ MZ[(4YN\U%KI9!J.@VWB0V]SQ1KA:5&*+&W1?JWM#J[!'266)RDJMP&"V#-Z, M[M83ON\O_"&QL2=S8$L>M=[QXF.Z#"(FA 4FCA$$#4_X%HN"@8C&]P-FT*MD MP=-YA_[!VTZV/ J+;W7Q3:8N7P;S %+,1%VX!]W\A@=[IHR7Z,+Z+S3MW7$< M0%);I\N#,#$HI6I'L3_XX41@'ET1B \"L>?=*O(LWPDG5@NC&S!\F]!XXDWU MTD1.*@[*QADZE23G5I^U0QB-X"5\5(DN$>[1P"87!A>A(WR^%28'K'6+%5_! MFL$GK5QNX;U*,3V7#XE73R[NR*WCFX"_UVH(XV@ <12/;^"->V/''F]\PU@+ M3L,'J81*I"A@XX1#2C)G+]G;PDTNPW&]W-E*)+@,J" LFB<,5C__-)I%O]X@ M.^G)3FZAK]X+HZ3:VF-$X,\ON'>P+G2R^^L2W9N E^F^X.#_&'I8"RL3D.UV M1=O6;TOK*R %*B>7(S0^YVDMGM!0"8.JRT>ZK;-6P/*,,$JZ3YF<[(">!>N$ M2LFP(;R3160.PO=\3#()[5&6SD_GR#R@9]V?03KA_^Q">S-L;/;+KNSE>#63RE M[W0VYGDTY_ET M^N0#QWX>FSLB$17PX!EUR5/Q06^^OA\U7"[,I3*8P M'\%LTB?+_R/\.NJISN:O^3N:^UBV$1*^,Y#3N_!@5W3'X. ^*>J4WPT2PRRC M=M*%J:+W1#E^1G"/)I$6?2YX8T0C3&H''&P29SIG1@Z@R;'-[M:*_V3,A@(7KG]EX]9+7G?4QJIGSBLA\"0>8K[4B& MD\Y2GIUEU.#*03R 2^]?>-*E2C1;WXLMF5@KUS:L?K=O]V_:+G>\WOXK?!)F M*XE@@1F)1L-7TP!,VW_;A=.5[WF/VE$']=.&PO=V]R:W-H965TV@5RZZ!;(;A#OM@]%'QAI M;!.A2)6DX^3O.Z0SB7,V=F>-%DH_2C62%:>&Z$---@96U['D6F M6F'#S$"U*,FR4+IAEI9Z&9E6(ZM]4".B-(Z+J&% 2[S28 M==,P_7*%0FVF01*\*N[Y=Z&L2.$ JLK$-@]/>$URB$ R(:?VTQ@SZE M"]R77]$_^=JIE@=F\%J)WWEM5]-@%$"-"[86]EYM?L%M/;G#JY0P_A\P M#:!:&ZN:;3 Q:+CL_MGSM@][ :/XG8!T&Y!ZWETBS_*&63:;:+4![;P)S0F^ M5!]-Y+AT0YE;359.<7;V15F$)(6/,,L@%LE[90O1W<\#"<.S#GIF453@,Z$0;U$P:SLP])$5\< M(3OLR0Z/H<]^& C<<%,)9=8:X8]O^&SA2JCJ\<]#Q(]"'R;^D]L'/R;]MD*X M5DW+Y M4BDZCL0;4 A@8,@LDUR>4:^JK6?&VQ=KUM]NYJ,ES;0VOT4580OHN MN247WW5#>$VKN2$%:UNMGCD=,Q0OD(P&.9P"DS4DY: @D:X?'V]7&I$R/P/M M#>SW1OB.(0WAJ_P_49?VK>L-5M@\H(8LZ9W>DBYZSO&I[Y$0()1)H>]@;$H'C9:O]M@+X:*L89]R^1G=><0@Y;=O$[Z;;+ZIC, M/9/3_R1ONP G,"K")(_I;Y"0_@3*89B.8RA'@]*ODV(4)R3/(H''HY([D,\[@DV9V!7=0>WDW((B@&U$>YGE)9A>6).&8,)+45Y3$X3A+R.22 MTL;*XPR2S#ON&D15QG$89Z7[][1/8$Q4*/U.D8S+L*16[6D*RCO*>\VARS': M>\-H;R[]2^UNB+6TW7/6:_N/@9Z<44?-*B= ]D7BMZ)[<(EZ#^19G\#4$L#!!0 ( !1("5?^ MGTX-\P, %4( 9 >&PO=V]R:W-H965T($G# MH;ZPX['G-]\S#%=*/YL%HH5U):09!0MKZ\LH,L4"*V;:JD9)-S.E*V;IJ.>1 MJ36RT@M5(DKCN!M5C,M@//2\>ST>JJ457.*]!K.L*J8W$Q1J-0J28,=XX/.% M=8QH/*S9'!_1_E[?:SI%>Y225R@-5Q(TSD;!=7(YR=U[_^ /CBOSA@;GR52I M9W?X6HZ"V!F$ @OK$!A]7O &A7! 9,;?6\Q@K]()OJ5WZ)^][^3+E!F\4>([ M+^UB%/0#*''&EL(^J-7/N/6GX_ *)8S_A57S-N\%4"R-5=56F"RHN&R^;+V- MPQN!?OP#@70KD'J[&T7>REMFV7BHU0JT>TUHCO"N>FDRCDN7E$>KZ9:3G!W? M*8N09' !7Y0J5UP(8+*$W^P"-7R5ELDYGPJ$:V/0FF%D2:>3C(HM_J3!3W^ MWX5O2MJ%@9]DB>5[^8ALW1N<[@R>I$+3,(A7>87\;N/PPG.NA2U.S DG*$G^5 MP@DD21;&:;]%_4C=)JD_M$99;,!J)HU@OL^3/&Z]P]P*)MU^8^7.KAX]9XS'SHN^MI[C0?*&!LZ0R MNM]U\O=7;BP\*L!?4-")=*+7E_S2.$CA7)9QMD&ES3CZV!S!H9V1)ZXM6QNP"?P*],(F[ M].V$G=C%L=L)T\P1O5[8IW!=%\6R6E+\R-%W*LX2%V\X=T3:C1TQ"-/!P'.2 ML-/OP7GKCE;'E EJ'G388=SKTS9RT.V&:2>#Z[?XN*;E8I"F M>Z.9Q.*!+G_774!T:&-&;44_5,O<+S4#A,MU, M_3UWOS.OFU7Q^KQ9N-^8GG-I0.",1.-VKQ. ;I98<["J]HMCJBR5IB<7M/=1 MNP=T/U,T.[<'IV#_3V+\+U!+ P04 " 42 E7R3VN"\4" #F!0 &0 M 'AL+W=O^ON,K0!%)*TO23 MKJU$86B;8*N ;0_3'MSDMK5P[,QV*/S[73LA=%/I2^QKWW-\;N['9*OT@]D@ M6GC*A3338&-M,8XBDVXP9^94%2CI9J5TSBR9>AV90B/+/"@741+'@RAG7 :S MB3];Z-E$E59PB0L-ILQSII_G*-1V&G2"EX-;OMY8=Q#-)@5;XQW:[\5"DQ4U M+!G/41JN)&A<38/SSGC><_[>X0?'K=G9@XMDJ=2#,SYGTR!V@E!@:AT#H^41 M+U (1T0R_M2<0?.D ^[N7]BO?.P4RY(9O%#B)\_L9AJ, LAPQ4IA;]7V$];Q M]!U?JH3Q7]A6OKTD@+0T5N4UF!3D7%8K>ZK_PPY@%+\!2&I XG57#WF5E\RR MV42K+6CG36QNXT/U:!+'I4O*G=5TRPEG9U^51>CTH W?[ 8U7"NY;EO4.5QS MMN2"6XYF$EEZR@&BM*:=5[3)&[0#N%'2;@Q\E!EF_^(CDMCH3%YTSI.#A%]* M>0K=.(0D3KH'^+I-W%W/UST0MP&KX(I+)E/.!-Q99I'JS>Z-MZ+K[:=SK3,V M!4MQ&E!O&-2/&,S>O^L,X@\'Q/8:L;U#[+,Z-:\)@4MN4J%,J1%^W>.3A;E0 MZ[O^KA_I.-+4B=NY211UK+*@5D!>LE*#&YW(-QUS2 MB2H-DYDY&;A3>HDIYDLB[';"ELNO2W+2.D]376+F""WA*3$5=X::^8X^ M1J9EFR;-"1S!,!QTSF@]"_N#46OA8B' (Q,E.BE2R7:J\@(M]]B"/?M4PR#L M#88P"CO]?JL*JQ_'T#L;MH[H+X3]T8!(.Z,P26+8E\IHI_=RU&L_8=Q?**6M MVK Y;8;8>=6[K^[5!+QA>LVE 8$K@L:GPWX NIHJE6%5X3MYJ2S-!;_=T"!& M[1SH?J6HJFO#/=",]ME?4$L#!!0 ( !1("5>#CP*DY0( '$& 9 M>&PO=V]R:W-H965T-\K.@2 M TV[8BW0H6B[[3#LH,ATK%66/$ENDG\_2G;<#$ASL26*?'Q/)NG96IMG6R(Z MV%12V7E4.E>?Q['E)5;,#G2-BDX*;2KF:&M6L:T-LCP$53).DV0:5TRH*)L% MV[W)9KIQ4BB\-V";JF)FNT"IU_-H&.T,#V)5.F^(LUG-5OB([GM];V@7]RBY MJ%!9H148+.;1Q?!\,?;^P>&'P+7=6X-7LM3ZV6]N\GF4>$(HD3N/P.CU@I3"'ACG:ZZ8&)0"=6^V::[A[V L^2-@+0+2 /O-E%@><472&3@7%N>R;=@C#"7R$&\5UA?#$-K/8$;(_CWF' MLFA1TC=0IG"GE2LM?%$YYO_'Q\2HIY7N:"W2HX"WC1K *#F%-$E'1_!&O3E[2&\+-SX,YSOEW-:,XSRB5K!H7C#*WK\; M3I//1\B.>[+C8^C9ZY> *V&YU+8Q"+^><.-@(35__GV(\7',#_XCOP+393R5 M2.7KT%!5L= AN@#1>CA*C1MJ?(MD D>NC--)S=16J!4TBC6Y<)@#U_3%R2VL MK)8B9]YL^\O=0Q4V-% .3:U;4+1.5"$ BP)#@X;O:Z$U0(+>03@;3$R*30SH:I"=[PI=(N?$0R$Z, M*PTB4-5C7_7^D9Z"%9M#]D-E%N^-@0K-*@P["T%_.Q%Z:S]/+]HQ\NK>#N,[ M9E9"69!84&@R^$3CR[0#KMTX78>ALM2.1E18EO1/0.,=Z+S0U''=QB?H_S+9 M/U!+ P04 " 42 E7S\B\=?P# #Q" &0 'AL+W=O>>>;%GAVME7XV!:*%32FD&4>%M=55 M')NLP)*9CJI0TLE2Z9)9VNI5;"J-+/=&I8C3)!G&)>,RFHR\[$%/1JJV@DM\ MT&#JLF1Z.T.AUN.H&[T*'OFJL$X03T856^$<[6_5@Z9=W*#DO$1IN)*@<3F. MIMVK6=_I>X7?.:[-WAI<) NEGMWF6SZ.$D<(!6;6(3#Z>\$;%,(!$8V_=YA1 MX](9[J]?T>]\[!3+@AF\4>(/GMMB'%U&D..2U<(^JO5/N(MGX/ R)8S_A770 M[2419+6QJMP9$X.2R_#/-KL\[!E^"VVXPX6NZ;Y"UXFZEQUX*A RC3FWL&09%]QR2FU-6!HLG@$8K1_1N&3GWM)-\!J7;0 K.;TZ]I=&_BY3XO:2T_69!#)R/[L6U@4K3 M*QPX"-IA=[NORNY.O=U=>WWV@+FE!LG3SQ2&!P84_NZFU=I6KJ!(N M,Z?>!,Y:AWS;@)M,U+EW_,;D! ;>,=S5UEU<&ANU#O>#@GOCEKW)5&#[W;'] M.#0? (7N!JYK:X+U6:60O>,3>LIWZQ8=]"$$<1[^G6CP7]$0TB +:8-^2,C) M+FM-/EU\_@C>>^3BO3%44D_[86NHO+6T82(UTF:>3\,8^U<]? S<^PXSU'!+ M,DTZ%X,(=!BP86-5Y8?:0ED:D7Y9T#<):J= YTM%[_UNXQPT7SF3?P!02P,$ M% @ %$@)5\[L6;IM @ +04 !D !X;"]W;W)K&UL?51M;]HP$/XKITS:I[8) ;J*023HB\HD"J)L^S#M@TF.Q*I?,MLI M[-_OG*09E2A?$I]]SW//G>\\WFOS8@M$!PO*":YP9N#Q^HW]H+SQ)^J]05]*,+B*.X?X:OWR7;K_GZ'_ ]:8<6G(8'KIA*.1/P[!A5 M )6SI_)MZ :GZ?R\C&S)4IP$-! 6S2L&R>=/O>OHZQFQ@T[LX!Q[,K>VHAM9 M5P*A%VV'E[T+6)!8XV5OT$@+OS9X<# 3.GWY?4K^^0##$2PWC_=KF#\]+->+ MZ6:^?*(&L#RCL!O#,JYRF!K#5-Y4")C*8*4%3SF5\:XRWH':!BRFFH[\+5V MTJH1#+UWZ_8WB&Y.%2<\:F&))J\'U4*J*^6:;NYVN[=@VHS ?_?F(5DPDW-E M0>".H-'5EV$ IAG.QG"ZK =BJQV-5[TLZ#U#XQWH?*>I3UK#!^A>R.0?4$L# M!!0 ( !1("5=^]?@^'@0 ,@( 9 >&PO=V]R:W-H965T+ M*$6J)&4[^_4[4K*3 I[1+S9YO#L^]_!>--TJ_]GLE+ MK)BY5#5*.EDI73%+6[WNF5HC*[Q1)7II' ][%>,RG$^][%[/IZJQ@DN\UV": MJF+Z98E";6=A$NX%#WQ=6B?HS:^\??>P4RS,S>*W$7[RPY2P/2 M/R)/0LTY].>I3N= M92_O_"];_^G_^!_"9R5M:>"#++#XT;Y'6 ^ TSW@97K2X1^-O(1^'$$:I_T3 M_OH' OK>7_\$ 0;:^(Z%UUIGQZU=R5R9FN4X"ZDF#.H-AO-WOR3#^/T);-D! M6W;*^_R12K!H!():P0/F:BWYOUC ;8'2\A6GY<(8M*9]/$U[]W"?.'OF@EZ2 MXJ+SIB+YWSY >,*=A:50^;=_CL5Z$LWQ6#\RKF'#1.-!YI0\O$#-VC2RFDFS M0DW(@FMF2J@9)XP6I5@D>>JD427QASY MQC-"9E$ZF02W,>J^CW=+%IN2EZ3OVB2#NAJ2TV)NE1#0=6= M>SI+TE%PI^1%KJH:J4K96B/Z2]+!)/B$+D;MFHYCOJ'-'N5XTL'O!%D2_*94 ML>5"P"A*LK@CD'=YY(GH=/V+9/'HE:R:O7B%L]$H)>Y)KAO**-S17#"48F?# MX9CDMY)P(EBV:V4DNL'V[??"+)N0M 4NWB3I&2&F@SL\$,WV^;Q_53A138-# M-0U.5M.RH9Q#8]ZVN@CH/<'W=[B5[8QSV?1S]7+RON/U\LAW%Y7KB'"/FJNB M[8L!=37<=[4T./LJ65-PB\5Y\,BH,1$/R7 2C9,T^%+[C*?BX2WC=#2)^G'J M^7N595&?WOT#TY)TZ14I'4S)-%X%2V9X[E0N)W%PPT5C/=')Y7A\E.;>F^E" M.;WV,]2 3X]VT!RDAS&]:*?3JWH[XS\SO>;4& 2NR#2^'!&#NIV;[<:JVL^J M9V6I@/RRI$\-U$Z!SE>*VG6W<1<&ULC5;;;N,V$'WW M5Q!J46P ;211-SNU#>2R1;=H%D'B;1^*/M#26"8BD5Z2MI-^?8>4K-B)8^1% M')(SPS/G\*+Q5JI'O00PY*FIA9YX2V-6%T&@BR4T3)_+%0B<64C5,(-=505Z MI8"5+JBI QJ&6= P+KSIV(W=J>E8KDW-!=PIHM=-P]3S%=1R._$B;S=PSZNE ML0/!=+QB%3R ^;ZZ4]@+^BPE;T!H+@51L)AXE]'%56K]G<-?'+9ZSR:VDKF4 MC[;SM9QXH04$-13&9F#8;. :ZMHF0A@_NIQ>OZ0-W+=WV7]SM6,MBS<6!P*1L0%%W:JS8M?2=M1FZE,$M-OH@2RL/X M "'V..D.YQ4]F?"/M3@G<>@3&M+X1+ZXKSMV^>(3=6O2UG>LO#8Z.1YM3\J% M7K$")AX>!0UJ ][TEY^B+/SU!+:DQY:8S.#) MD*M:%H__'L-^,OMQ[+.E CC0C#SPIX.! 4H 3H*=,?B&EX9FR"!BO'#*V ]] ML09W2I;KPFCR,QD-_2P+T1B._"RG:$2CV(]39Z4C/XKSP4Q*A%L1)DIRRXHE M0E?/A*8C0OUADI'(3].88!1-!E]$A=.@K+^M@A>((_*C:(C?(4UMR#!%YPB= M9]*PFH@>+RX9AGX8YQ98XL=)[/#D?CZR$*,L]5,,/B%FVHN9GA3S&BE4>/?@ MN39+ MZ_\B^XN\-[ I7!.=1OT,YD#RB*L*+AO5RB/+)'0!"4?N98F^>"K*/ !T:A# MB3%&DD+B+5^":C>\5_^A]R?JIUE" MSJP11C$Y.P8/D-)#8#3+L$W]+**#0U$^QL%W@935;I&=4OI='FANMU>>O*5 MO2G()T(:PL5&XM8N'4U[5(28*?)'>&ANX#6;G5L7:S%82I+<@_V M:W[HR)X,2O.C9R'8>WAPP&UL?51M3]LP$/[>7W'*T 12(2]]H71M),J&QB08HFS[,.V#FUQ;"\?. M;(>6?[^STX:BE7Z)??8]SSUWSMUHI?2362):6!="FG&PM+84>5(@PB:)^6# N@W3DS^YU.E*5%5SBO093%073+Q,4 M:C4.XF![\, 72^L.PG14L@5.T?XH[S598<.2\P*EX4J"QODXN(R'DZ[S]PX_ M.:[,SAY<)C.EGIQQDX^#R E"@9EU#(R69[Q"(1P1R?B[X0R:D ZXN]^R7_O< M*9<9,WBEQ"^>V^4X& 20XYQ5PCZHU5?F7K31UV (/H'4"R 21>=QW(J_S,+$M'6JU .V]B3."[=HTRM MIEM..)O>*8O0A5.85F4ID,IMF8 K9I9P30\&-[)^>%?!XT"00U?WV8]ML'^\Q-)I2I*#K\]FG (ZXM3(3*GO[LR^AP3*HONOJV M7'U=D9.6#UTRG@/]$-=SIP@+UPL\: YFJI*T;LCEM MQMEEW<6O[O4LO&5ZP2E'@7."1F?GO:"6OC6L*GU/SY2E">&W2QK)J)T#W<\5 M_= ;PP5HAGSZ#U!+ P04 " 42 E7F0XUB2@# !\!P &0 'AL+W=O ML._.)FK8 MERN3!S"6 MJ79?V!2RW6L/XI4V,MLI$X*,B^+/MKL\'"CT@C<4HIU"Y' 7CAS*]\RP85_) M#2@K3=;LPH7JM D<%Y:4J5%TRTG/#+](@]"&2WC"&/F:S5+4P$0"HY3X8B)& M(.;A3F'"#3Q(K>G^XMG)U?N^(0C6D!_OW(T+=]$;[CKP*(59:O@@$DR.]7V" M7N*/]OC'4:7!SRMQ!BJ[2_^GHB !T!+PG9]D,%33#1LVR M82F):GN@U,%[,.=GO2@,;XUB"<([Z+0:O:!'BW:[T6L'M0?4%,A1^<5%^:6[ M\NN&/:C3K]F$>NV@GR=+HKVK(VY=NC]H(]-X=TE/J7,,,%%\(6"A54CHK+A')FLTJ9"Z]K$R77 MW$W?BU'RBV81#6-3=XYQF]-8)1?_,!,2(Q"VKVNCK$C71G%C4)"'.; %/1+: M@%GB ;\786#)#%L%EW)-0,A4#RZ/P")5]A',T)9,I],ZR:Y_,!$S5 LW]S4X M#HOA6)Z63\NHF*BOXL6[],@4I4E#BG-2#:ZZQ)HJ9GVQ,3)W\W4F#4UKMUS2 M\XC*"M#]7%*'[C;60?G@#O\"4$L#!!0 ( !1("5>RU 9)HP( *L% 9 M >&PO=V]R:W-H965T%!E0CC*$K#BG$9 M9&._-]?96#56<(ES#::I*J9?9BC49A+T@]W&'5^5UFV$V;AF*[Q'^[.>:UJ% M'4O!*Y2&*PD:EY-@VA_-!L[?.SQRW)@]&UPF"Z6>W.*FF 21$X0"<^L8&/W6 M>(E"."*2\7?+&70A'7#?WK%?^]PIEP4S>*G$+U[84>ZOIE!/.9C^414CA%*X9U_#(1(.@EG#-)9,Y M9P)NI+&ZH3)8 R(WPJ1PJZ0M#7R1!1;_XT.2 MW.F.=[IG\5'";XT\@R3J01S%R1&^I+N'Q/,E1^[!0)O?H?1:]. PVG7.R-0L MQTE K6%0KS'(/KSKI]'G(]H&G;;!,?;LM30]F!J#5(E;9*;16 ][#O,&ZVY M7,&,&6[@M\\"'O#9PDRH_.G/H82.ACR<$-TY=G<.5YACM4 -2=_OQ/ =UR@@ M@7FC\Y(Z!6K--$C@4$'" MO0:J4*_\F# DII&V[:5NMYM$T[8!7]W;,7;+](I+ P*7!(W./IT'H-O1T"ZL MJGT[+I2EYO9F2=,4M7.@\Z6BI[A=N #=?,[^ 5!+ P04 " 42 E7A8*\ M/>\$ !*# &0 'AL+W=OJ[)65\Y*Z_7%<*CR%59,>6*--9TLA*R8 MIE>Y'*JU1%98I:H12;'3):[R5H#95Q>3^&DNQNW(" MY[ QX\N5-AO#R>6:+7&.^L/Z5M+;L+-2\ IKQ44-$A=7SC2XN$Z-O!7XR'&G MGJS!1'(OQ(-Y>5-<.;X!A"7FVEA@]+/%EUB6QA#!^-S:=#J71O'I^F#]M8V= M8KEG"E^*\A,O].K*&3M0X()M2CT3N]^PC212BAU((TW6S,*&:K4)'*]-4>9:TBDG M/3UY)S1""N+_TH-MU&$;]5F?S*G]BDV) M(!9P4ZU+L4>$.3GA.3;%@NMOBS4M2Y$W2]*;82Z6-?^;I&Y1Q9/3"/9Z,NY4DT$]) '/^^-7&@&J*MJ:' MQ> I$_.GP4DLF:9-+2XL \PC_+(:4"8J$J.>R1]@*5FM%9Q X/O=,SP\!W,K M)-;6<"L;!!$D/AVG9CF8H=*2Y\9C(_VAYKK)FX)39S;_H)PSR,8C2,( G<\ M2NA)Y1_<" M9BCAEA3D$LW:A?F9B9RO7\F!7J]'J> A:(H=07*UJV"3W96$KCI%B6- M?KAY1)ESA7 K#;U/UR1LTW?VK>P,S;>&UTLBF51G M,%TN)2Z)+O"&A#A]1'+XR,I-(Z178J-87:BSP?N-5IJ6QB#3\ ISK.[)?12X M#;^RT/73F,H395XV'OQJN$)P@M -J&I!%'C$E4, !9R&L9N.?#@C+GM)^F_[ M'=TM;=.Q.QJ/R7:<>@'QR/,3RU4WC?R#35N8;S23Q(TB@VH4>7$&,4&CE\S- MR.5'(BXA(:> CVO,FYZ!+6W_$,+)UR#ZV)AT;$R>/<; 7-$UX:_D>)E[R (8Q\\]M)%-0=!1)/X)V@I,VX M>CA?F)G&B0/2Y%,:BD6-6VI?!($@1>/Z/0D2%)3IO' MOOD6>%DP:"?9MFFNTYCZ/TRHS>.8TG\XI5OR KD5R#(ZS%(O"?IG0!:[X]2, M_]AV\K%"#I_<[RJ42WN+5?11V=2ZN>IUN]U%>=K<#[^(-[?LMTPN:1I"B0M2 M];V49KIL;J[-BQ9K>UN\%YKNGG:YHLL^2B- YPM!EZ;VQ3CH_CY,_@%02P,$ M% @ %$@)5UI7XZR# @ 5P4 !D !X;"]W;W)K&UL?51=;],P%'WOK[@*"($4EN\VC#;2NC$QI*%I&^P!\> FMZTUQPZV MTVS_'MO)0I&ZOL37]CW'Y]SX>MX)^:BVB!J>:L;5PMMJW9P&@2JW6!-U(AKD M9F%6[K9:KL0%/.&;/ .]8_F1II9,+)4M$:NJ. @<;WPSJ+396KS7<)/ MBIW:B\$Z60GQ:"=7U<(+K2!D6&K+0,RPPW-DS!(9&7\&3F\\T@+WXQ?V2^?= M>%D1A>>"/=!*;Q=>[D&%:](R?2NZKSCXR2Q?*9AR7^CZW"STH&R5%O4 -@IJ MRON1/ UUV /DKP'B 1 [W?U!3N4%T:282]&!M-F&S0;.JD,;<93;GW*GI=FE M!J>+[T(CY/ 1KO@.N1:2HH+W]V3%4'V8!]H<81.#/<=B J3&Z&E]@B?4*)221/[$%MU6/)[>D,U=. MHZ2$*7@+:>J'46Z#V$]GV>3!]!U0#HT4)2H%,S_-$DC]*$\FEY13:![-NXGVC1N-99"6T:T85; M\_*AM EF?RW,=1HF]H#Q+2W^ E!+ P04 " 42 E7AG5R=Q$# "+!@ M&0 'AL+W=OM7#-2B: U MDJ@/VZEM($Y;M(NF,-KN[F&Q!UH:6T0D4B6I.-E?WZ'D*&GK>@\6A]2\F3(5U[0(1C6^'F/Z8T@&?V@_1W_6U4RT;;O!*U7^+TE8+?^I# MB5O>U?:SVK_'0SV9BU>HVO1/V ^^Z3>2$=$/Y8C6]%82SRT_*(LS@%:PU M#5K;^P#6-9<6N"SA[;=.M#0!"R^_\DV-YFP>6DKJH&%Q2+ :$K#?),CA6DE; M&7@K2RQ_Q(=$=F3,'ABOV,F ?W3R')(H !:QY$2\9.Q TL=+3G3 P%#?L?(& M='H<[>[,A6EY@0N?+H5!?8O^\L6S.(]>G^"6CMS24]&7IX?R3T\:ON*=A56M MBIM_C_$_F>$X?VHQ]BU^@P4V&]20Q('G^NV:SKR/CH?[B:;5ZA8=&P//(0VF M23JL<>RM.E&70N[,KZY)&F1LZI8TS;V/2->J4O5/3I-@QB+(@BQ*O&M>5,1< MW\,+WK2O <Y=UD47=/5W&))8D$M+@0?Y,BUL%':BO^&@Y=9%LQF.9R1Q8)LEL*9 M]XE4N?V?G-F,4LZ<,0VB"8-C?[OPB4 TJ'>]#!IJ3"?MH!7CZ:BTEX/ /+H/ M,GW-]4Y( S5N"1J=3S(?]"!]P\:JMI>;C;(D7KU9T=<"M7.@]UM%%^ZP<0G& M[\_R.U!+ P04 " 42 E7B^V!0(0$ !X"P &0 'AL+W=O+E61@8EJYHW>5['84=AX+ZAX*\5?,.[,618?B2* M3$:"KT!H:433"^.JT49RK-*7$'K:V#P@@Y?)33^'7.OT0Z/:^OJ&,HER>C8QO275#Q1>_+K+U[L_M;! M+6RYA5WHDR;Z#IBJ..>S\P=)X4)*JB20*H>OC$Q9P11##_XR+L ]?58P+7CV M^/]YUCU7I#C 2 ._67A1<&"PV$;!P>H0 M@E8*I7TGBD+S#J/!*\-'56(7HG1-X!WDV&N0(R_IIE/P:GZNJ"@U?<^)0A,+ MUXG3J(O25LWS8_"B^&U:KRS$<=)8&.U(P:E,P>C\%';CB4NVEV.6;*=:- M=\>>]SJ"M4DOZ_0$6 5JP6N)N2W/=E+,D# $XX>*R 4L"D[81MN$[O2%$B'/MO<=]%P,(3YV MJ(8][!IX%A^"YDQF.@Z HG2+XO?PM_9A_=I!"GIA8,Z3&#YTE$WGKF_[]XL U4;7 U7\LLD[KQ_OXQGA+R;HU@<^QHV-.F'0Z M@:;1.F$2Z 0+(<8<<]+8U[NHV25IHG1(,QBUI^U8>=%,4UOQ9B:])F+. M*HD\9JCJ]A+L>**9\YJ-XDLS6TVYPDG-+!&PO=V]R:W-H965T[+-]W^?[*/TLRD0+6Q+(JMH)+G&DP=5DR M_6>*0FTF02_8;=SS56'=1IB.*[;".=K':J9I%78L.2]1&JXD:%Q.@LO>Q73@ M_+W##XX;LV>#4[)0ZMDM;O))$+F 4&!F'0.C:8U7*(0CHC!^MYQ!=Z4#[ML[ M]J]>.VE9,(-72CSQW!:38!1 CDM6"WNO-M^PU3-T?)D2QH^P:7R380!9;:PJ M6S!%4'+9S&S;?H<]P"AZ Q"W@-C'W5SDH[QFEJ5CK3:@G3>Q.<-+]6@*CDN7 ME+G5=,H)9],[91%Z/?@$-S)3)<(,-0K]Z 3B*.X?X>MWJON>KW]$ MM8%&WR%Y#7IP&.WJY,)4+,-)0(5@4*\Q2-^_ZR71YR.Q#;K8!L?8TSG575X+ M!+6$)_^H,(?+-6JJ$;BKRP4EB(Y\C@S\]"+@ ;<6ID)ES[\.Z3EZXV$]#X5& M?)5'F//MZPU*"_JT=(;+CQOB/6O*#,]@LY/"6BGTVDHJ2]/HH'YA+),YERLX M.TGB(8W#I._L:.3LX>#E:_Q#@;]KOF8"I=VQY36"5=0TC-4\0_@502P,$% @ %$@)5^4\,9H= P MLP8 !D !X;"]W;W)K&ULC55M;]LV$/XK!RTK M-D"S*.K-2FT#<;IA'9 NB+/VP] /M'2VU$BB1E)Q^N]WI!3'!5*C'VP=C_<\ M?.Y./"T.4CWH"M' 4]MT>NE5QO270:"+"ENA9[+'CG9V4K7"T%+M ]TK%*4# MM4W &4N#5M2=MUHXWZU:+>1@FKK#6P5Z:%NAOJZQD8>E%WK/CKMZ7QGK"%:+ M7NQQ@^:?_E;1*CBRE'6+G:YE!PIW2^\JO%S'-MX%?*SQH$]LL)ELI7RPB_?E MTF-6$#98&,L@Z/&(U]@TEHAD_#=Q>L[Q(*?RG3!BM5#R ,I&$YLU7*H.3>+JSC9E8Q3MUH0SJP_2((0?85QNZ>.70(,@=->,1NP%A^Q5NQ!>IX-J] M$JBT=;VT:FJ>AG]=3G"/3P;6C2P>/K^6WGD!]Y5"_*:#0/5'5_]-_?2='=L9 M^\=/K!NA'FBP?*#?1E"IX>0:JNK0#A* L3\EM!<5^Y,+3$1I'$W3N9XQ# MXNSW74D]4S7E$\#?ID(%B9\D&6U;6!CZ.7&$W&44,C^/0MJRAW)."B(((Q?X M4B#*DC&?19E].MD7D),4.O[%$>:9GU&I3CPIG3M/GCVOO:G!R2"AEVSOQJ6& M0@Z=&6?*T7NGA3W@^)U:_0]02P,$% @ %$@)5TZ#E#R0 P :P@ M !D !X;"]W;W)K&ULK5;?;]LV$'[W7W%0AR(! M%.N7)=NI;2!.FZY#FP6)MSX,>Z"ELRV$(CV2BI/]]3U2BI("GI"'O9AW%.^[ MXW=W/,\.4MWK':*!QXH+/?=VQNS/@T#G.ZR8'LH]"OJRD:IBAE2U#?1>(2N< M4<6#. RSH&*E\!8SMW>C%C-9&UX*O%&@ZZIBZFF)7![F7N0];]R6VYVQ&\%B MMF=;O$/SQ_Y&D19T*$59H="E%*!P,_-"O9+ W64MY;Y4O MQ=P+;4#(,3<6@='R@)?(N06B,/YI,;W.I35\+3^C7[F[TUW63..EY-_+PNSF MWL2# C>LYN96'G[%]CZIQO*1C(G%X20\3&IK[ M';M>8STZ;FU[YUSO68YSCYI#HWI ;_'^792%'WIB&W6QC?K0%W?4BT5-:9"; MESS]Y6*%%3X:6'*9W_]]+.Q>X.-A/WL8?,0 MH(H75*-*HNUZ)1.*#\8)>?UC#*)M!#1]K1D;Z9CJM2E ;/OE)O M%T<*]FTD];H[3A*YHJ>$WI::<;A1]$HJ\P0!K!0K4+ *X3VK]A]@J6P_74MQ M!I>RVB.UVZ5K:Z+U:ZD-K*1A?/#=/1]8G+$'5/0: JND,N6_#9\$7LH"3IZ0 M*7U*5 ZG,!TF1.W@LY):V].U,,3RV(_"C-;43T.;KBSUX\0*X[$_H:Q132N<6B'.0BM,_7@Z=3N1GT[&<#JXIBFQ9IR)'"VV'XXGM([\ M>&1=I*D_36RJL\R/TZ0OTUF7Z>Q_RK0/5[6I%:FO;_7ID::7QC>606\LQ\O@ M%NWD*RB9%&%;Z8F?A),!*2.B9A1&5DQ?Q(S$9#JUXMB)8RM.K)B&@Q4]O,@V MAA!'H3^ECZY ^ED-7@T *JRM&W,:M$,D)?CS1C^QM2V%!HX M;L@T'(ZI-U0SVAK%R+T;)VMIJ(J=N*-_ ZCL ?J^D?20MHIUT/V_6/P 4$L# M!!0 ( !1("5=!*Y7&PO=V]R:W-H965T,7%05R<&7.!=H8HE J[8"&@%M'ZH^;.Q)O,+> M=7?7!/Z^L^O@!BGDQ7N;<^;,K,].-U(]Z +1P%-5"CWS"F/JLR#068$5TR>R M1D$G*ZDJ9FBIUH&N%;+<@:HRB,-P%%2,"R^=NKV%2J>R,247N%"@FZIBZGF. MI=S,O,A[V;CEZ\+8C2"=UFR-=VA^U M%JZ!CR7F%0G,I0.%JYIU'9_/$QKN MGQPW>F<.MI*EE ]V\36?>:$5A"5FQC(P&A[Q LO2$I&,OUM.KTMI@;OS%_;/ MKG:J9%,>B,-0I1 '[Z; A5<2;'N&U057'&VY"4W'#5\N&?+$O7Q-#"4TR*# M;,L_;_GC-_A'<"V%*31\$CGFK_$!:>T$QR^"Y_%!PF^-.(%!Z$,T)9VVY!![ MVE[)C119HQ0*\^I.?CO-<(]/!N:ES![^[)-_,,%^^=1A=!V^Q RK)2D81'[/ MMMOV/.Z=9YEJ,(>,+I:+M=5%4\US5,PY[0,R)?KT AS#$8S]471*XZD_'$UZ M"YN% (^L;!#D"H04_4Q6-1KNL#5[)LL;#2,_&8UAXD?#8:_MPS ,(3D=]X[H M?_6'DQ&11A,_CD/8U^I@QQ,5JK5SOB:EC3"M/;K=[G$Y;SWU/[Q]F:Z96G.A MH<050<.3\= #U;J]71A9.X&PO=V]R:W-H965TABHML"3J M1%3(S3J:@UHQSO)*BZ+(E\ MGB,3ZUDP"%X,]S0OM#6$R;0B.3Z@_E+=2;,+6Y2,EL@5%1PD+F?!Q>!\/K;^ MSN$KQ;7:6H.M9"'$D]U<9[,@LH208:HM C&O%5XB8Q;(T/C98 9M2ANXO7Y! M_^!J-[4LB,)+P;[13!>SX"R #)>D9OI>K#]B4X\CF JFW!/6WG<2!9#62HNR M"38,2LK]FVP:';8"SO8%Q$U ['C[1([E%=$DF4JQ!FF]#9I=N%)=M"%'N6W* M@Y;FE)HXG7P6&F$P@6.XYADN-&8"Z4/#>X&6OXT-#KF48OS",2-ACD3Z=./790[07=3-JIBJVKO'E>"K2C/(96840U+DE)&]3/T M(1X>15'4>T19 A.$PW#D#4(39BP\/];VS'X],#YU9Y>UE,@U5$*ZNW?@0N"P M=_/*_0APD[(Z7M%GWS,$(O*C'_FU-X[]-$XB] MS;<11KY!_::+;7^MWJ=[]0ZW!DR),G=C5$$J:J[]K&FM[:2^\ /JM[L?\[=$ MYI0K8+@TH=')J5%3^M'I-UI4;EPMA#;#SRT+\[=!:1W,^5*8"]QL;(+V_Y7\ M E!+ P04 " 42 E74&:OSUP' #(1 &0 'AL+W=O_ER=^UL6K!+,V7G]'7^D9L M&9CF&P9F;6 >:M"K#7J'&O1K@_ZA!H/:8'"HP; V&!YJ,*H-1H<:C&N#\:$& M9[7!V:$&U%C]]GIEKVDZF)6)*.KBX*_DJ*LKWCE0=5/*WO5L]*\ ME-2#+-2WJ;*35S]QR8A)?B37\1^+5*1E/Q<*2%GM7;S]\S][7VU-3 ^BJ.[N^O>;J]MZ86N)M5)P2 M.CHAIF&:Y,N#13Y\_[&E89-#,,-W,=8Q&/O+/?E0_VYM,%L/"Q;Y*>D9%:RG M:9-S.$9W:2ZF-1ZF-;X>8[%88>B[F.!P#-5@POTSPJQXZ3[8&$W+,LDBQ1%81L&P]NM [*<.):(:;U;PT8VR$'" M7"3,0\)\)"Q PD(0K*&5X5HK0ZU6[J(_9TH5@DB^D@!9Z8>IA=9/3)9RF41B MNI;("?G,992U*47K[%BE(&'6$G:V+:JS'54A_3E(F+N$#32AV'X-TQ@-QSNQ M&+)1 1(6@F -#8S6&AA]DP;<@HO6Y<1H/XKN#8V=FSYIJ45-8^<'M+1-/#:6 M0L(<),Q%PCPDS$?" B0L!,$:VABOM3'6:L.Z?CAHD:*E'#OP(V$6$F8C80X2 MYB)A'A+F(V$!$A:"8 UAG:V%=?9O!EY:9\?J#PFSD# ;"7.0,/?LW=VRL[T0 M[4=*!SL1&K)- 1(6@F -L5!C\]S(^*CM4(E&9!:3:4YM2T[8X[&NVL MG5RH2Z_-97_'I0]U&=2T;0'W=A01Q)E^5!: *6%*%I3HIO\!ZI/@+!2,>="" MK1.S15+F.ZAO8K6*3%6LFI#_SEE1SYMJ:2G2I#YMU2,T!P)*LZ T&TISH#07 M2O.@-!]*"Z"TL*8U-G?H8&O6;PIMDSQ!]=D3QPOM6@@FR^U]GL>+HF"YU&SJ MZ[T?+3IH/@649D-I#I3F0FD>E.9#:0&4%M+]G!0ZZ+\INDVV!M6G:[B1"B _ ME*N[CZ1 M\C" .@U1M*:>-AD>])T4CV^+%D^(Q[*D7-39(E;.6X4'30^!TBPHS8;2'"C- MA=(\*,V'T@(H+:QIC>3*X9OSV"8!A.HS0/ ;*>0O\A"S/"I2KB+-Y+>%D&6. MB7ZC!9HY J594)H-I3E0F@NE>5":#Z4%4%J(HC7_VW:3E6+JLU+^@8T6O<=C M]0BE65":#:4Y4)H+I7E0F@^E!5!::.YGT="]F;*[]?Z &2N>JU=<"!+S12Z7 M_^6U+EV_1N.Z>GG$3OF$GENTI=RFYTY;N4O/O;9RGYX'R_<;;)JS?,?';50\ MI[D@&7M233-.1RH(*):OS5B>2#ZOWG;PR*7DL^IPRB(E\+*"^OZ)<[DZ*1VL M7UYR]7]02P,$% @ %$@)5[>K\^7V!0 BRD !D !X;"]W;W)K&ULK9IK;]LV%(;_"N$50PLDL43+M\XQD-IJEZ'I@EZV M#\,^,-*Q350259*V$V _?I3D6-;%; 2<+XDE\;Q'>DA1YQ4UVPOY76T -'F, MHT1=]S9:IV_[?15L(&;J2J20F",K(6.FS:9<]U4J@85Y4!SUJ>.,^C'C26\^ MR_?=R_E,;'7$$[B71&WCF,FG=Q")_77/[3WO^,S7&YWMZ,]G*5O#%]#?TGMI MMOI'E9#'D"@N$B)A==V[<=_Z=)P%Y"W^XK!7)[])=BD/0GS/-F[#ZYZ3G1%$ M$.A,@IE_.UA %&5*YCQ^'$1[QYQ9X.GO9_7W^<6;BWE@"A8B^IN'>G/=F_1( M""NVC?1GL?\=#A9 /EBY;F*#=Q>OY):""47)*;X,>6*Y[UGLHVE0*MBKT2%&%)2#YR]L C MT\1LF^/;&$+R>@F:\4B],3'?OBS)ZU=OR"O"$_)U([;*1*E97YOSS++U@\,Y MO2O.B9XYISLFKX@[OB#4H;0E?/&2\-'9\*4]_(]M%+"$RX MVY:];_KFV$'TV$$TU_/.Z'T0(MSS*&K#:(W,IIBW*F4!7/?,'*) [J W__47 M=^3\U@854VQ9B(URL6RNVLU==^".)K/^[A1E:S.'ELTJR 9'9 ,KLIMPQQ)- M[B#D 8O(/W<0/X#\MXV@5:@K04RQ)::8CR16Z0WOV!N>M3<63&U(RGA(F"9! M)!1/UFU=X37& AV,G-J(6;2T[H"'?T\Y&YDB(FQ8S11G?4H'M) M)UYMO"VL>;KRQ13SD<0J?,='OF,KWZ]"F^DW, 4%#T&RK+1H0SQN(*:N.QK4 M$%M3=46,*>8CB5403XZ()_9'71"(;6(*-0D!\!U[B* -\:2)F$ZG-<+63%T) M8XKY2&(5PM,CX:F5\&VR@T0+V3KW3IM36M)V18ZKY6&I5Y*5G<^VF[2,P!41F M+RF(6)&MV;",;]HKV4-5\++4J[M+PN7;'=RR74_9TKE9V6RS? M>$SKD%$M'ZJ:CZ56A5RZ/M=N^PQDN0538CRFD"AH'\I-TW7-@3=8:, MZOJPU*J02]_GVHW?;1*(&(AFCV< -RV? 5SGBVKY4-5\++4JW]+UN7;;MX05 M&&,26@@WS=^EYS7J-E3WAZKF8ZE5US5*_T?M_J\HDJ-R4:EUB:-I_BZ;U;$] M4^?%"U3WAZ56I5RZ/VIW?Y_@V5L35BSFA:V#TNM"OID MG<[N^92$2+5F@B^74SQ#E[T35AJ?*NDIES]QYH0]WI0_5 M2F*I5?NPM)+4;B7?\X1KN/S(=V;FOTTT2];(9]$5O^GH('&ULG57?;]HP$/Y73E$?0&I)"#]; 5(IF]9* M=*B,[6':@TD.8M6QJ>U )^V/GW^D6=8!#WM)[/-]]WUW%U]&!R&?58:HX35G M7(V#3.O=31BJ),.XFES51>"?8-YKJ;!P, TAQ0PJFG\3A$Y;Y]&R\ M1##EGG H?:, DD)ID9=@HR"GW+_):UF'&J#3.0&(2T#L='LBIW)&-)F,I#B MM-XFFEVX5!W:B*/<-F6II3FE!J$:YIC2A##X/L=\C?('7$ (*B,2%5 .*TZU MNC1&L_Z2B4(1GJI1J$T65DN8E(JG7G%\0G$?YH+K3,$'GF+Z-SXTV5 LZT27$41S#:CF#QD6SIOT,1:>J4_;.44Z)H @WS3:6",2(5F.1]YYKPZV0;O2(? M>E!7U+H^KF=0Z1F"\]?/BC[N?NG,BMY0K8+@QT*@U,$V2?I+YC18[-SW60IM9Y):9&?XHK8,Y MWP@S0&PO M=V]R:W-H965T5Y\9^=NM)7J5A< AMR5 M7.BQ5QBS'OJ^S@HHJ>[)-0C\LI2JI :G:N7KM0*:.U+)_2@(!GY)F?"2D5N[ M5,E(5H8S 9>*Z*HLJ;J? )?;L1=Z#PM7;%48N^ GHS5=P368F_6EPIG?JN2L M!*&9%$3!M?D88> .MV$J"%$CPG])PAQ0XB?Z]!O M"/WG.IPV!!>Z7\?N$I=20Y.1DENB+!K5[,!EW[$Q7TS8>W)M%'YER#/)%VF MQ.0MN8(-B KPG<(U"/ M?(-[L8I^UOA.:M_H"=^8S*4PA28SD4/>P4\/\P<'^#[FH$U$])"(2710\%,E M>B0.3D@41'''?J;/IT==X?R?^^R?W?>2$;>W(G9Z_2?T4EB"4I"WM^+'',H% MJ)]=!WU0RM:YH5[3#,8>%C(-:@->\OI5. C>=67Y)<72EQ2;O9#8WGGTV_/H M'SR/*=YUA345BX,IR-25!5 GY#.C"\:9N3]Y_/_^[ORI)K5-&#@?VT,V2= + M1_YF]PPZ0&'O=!^4UJ#!#B;:1\PZ9HIMK.XZ?^7K'CBG:L6$)AR6:!7TSK"RJKJOU!,CUZYP M+J3!?+MA@:T8E 7@]Z7$XME,K$';W),_4$L#!!0 ( !1("5&PO=V]R:W-H965T_UP;&7)\J^\ 1 H&]Y1OA*280HKE65APGDF%_1 HCL.5"68R&;+%9YP0!' M-2G/5$/3'#7'*5'6RSIVR]9+6HHL)7#+$"_S'+.'&\CH::7HRF/@+HT34074 M];+ ,>Q ?"YNF6RIG4J4YD!X2@EB<%@I'_3KP*OP->"O%$[\[!U5F>PI_5(U M?H]6BE9-"#((1:6 Y>,(&\BR2DA.XVNKJ71#5L3S]T?UCW7N,I<]YK"AV=]I M))*5XBHH@@,N,W%'3[]!FX]=Z84TX_4O.K5834%AR07-6[*<09Z2YHF_M74X M(TB=<8+1$HP^P7J"8+8$\[DC6"W!>NX(=DNH4U>;W.O"^5C@]9+1$V(56JI5 M+W7U:[:L5THJG^P$D[VIY(GUGU0 ,M&OZ Z.0$J0SY#&)*U7\4?43SF.8P8Q M%A"A_0,2": M_H\R=/]0 $?T@#Y1&G&$281VP(YI**,[FD7HC0\"IQE_*_4^ M[WSTYM5;] JE!-TGM.02SY>JD*E4$U+#=MHWS;2-)Z9MHBTE(N$H(!%$(WQ_ MFN],\%59PJZ.QF,=;XQ)P3]*LI4\G]C>,,1A>VH3HUM=K%CFM=TS1SL52/Y_4:PCS+M,Q+E#\BYBT6 MGG8)"T9@CFV[=@>[2-/JTK0FT[QE-"I#@?[90KX']N]8MI,*U9_ -2]P""M% M[O):=H]6# "LSW]S. 763I=ELYDEO>4RE!<[Z];'":RFSU,6F]2 M[V>M-Z>8/Z=8,)/8Q:(LND59O-QZBX$/#-OK&6\$XUI.SW=#D&[;O9TP&(), MT[#&/>=VZ;F3Z04DEA%@C[[SY6D@HX4\)DYO>I.J/^N\.<7\.<6"F<0NEL;K MEL9[N?.\X=^=KKL]ZXV 7,/N66\(,ERW!PJ&(%,?6$\].Z/FP.+Z:K84\ P M0D !D !X;"]W;W)K&UL MI59M;]HP$/XK5M0/K52:5Q*H *F%3>NT3E6[;I]-NJ](5%%1=B#5P_+,0LJ : MAW+IJK4$FEFG(G<#SXO=@C+N3$9V[DY.1F*C<\;A3A*U*0HJ?UQ#+G9CQW=> M)N[9D2'D _KN\DCMP:)6,%<,4$)Q(68^?*OYSZGG&P%E\9[-3> M-S%2YD(\F<%--G8\PPAR2+6!H/C:PA3RW" AC^\5J%.O:1SWOU_0WUOQ*&9. M%4Q%_HUE>C5V!@[)8$$WN;X7NP]0">H;O%3DRC[)KK+U'))NE!9%Y8P,"L;+ M-WVN K'G@#C=#D'E$#0=H@,.8>406J$E,RMK1C6=C*38$6FL$5V"BT5B-7(TVSF)M6E*Y+2L$! M2C&YQ557BKSC&61O_5V45VL,7C1>!T!@JW-L-DT(*D DLV TEU6;@I8-EE9"%%4>4GR,Y-+M?I[[$+_+[? MD- V"L-DT"VA7TOH'Y7PDLFRS.2?S1PJZ?5;*_>"?APU^'59>7[833"N"<;_ MG0!Q:^$HB.,&N[91/_:#;G))32XY2NZ18W'GEIS9:CK/,1=Z9 Y+QCGC2R(6 M9 V2B$"XT'TU:P%,69Q#Z6O(.V M#J\EI&WD#\,#]3>LI0Q_DQO-^JMH5MQQ![KX#KOR=.\L* EW6/G)X$#P?>^U MA7C_DC* O>)HLE2P^P=8, P;G+N,@F:0W;T&B+%:VGN!PK-KPW79)^K9^NYQ M93MN8_[:W$EL8WV%*2\TMU1B!2B2PP(AO8L$PRC+.T(YT&)MV^Q<:-PP^[G" M>Q5(8X#_%P);;34P"]0WM&PO=V]R:W-H965TM&%J@B=YL MQ\YL 8VSHAG0-FC6[3,MG2VB%*F1E)W^^QTI175LV>N ?)%(ZIY'S[V0Q_E. MZ6^F1+3P6 EI%D%I;7T=AB8OL6+F4M4HZ!=?+V?.WAO\Q7%G]L;@/%DI].?L.MLHP#RQEA5=6!24''9OMEC%X<] /$, Y(.D!P"1B< M:0=(O:.M,N_6+;,LFVNU ^VLB MP"O@$OXL56.8+,P\M.2$DQ+FG>";5G!R0O $/BII2P._RP*+Y_B0G.\CD#Q% MX"8Y2_A'(R\AC=Y"$B7I@)[ES\.3,W+2/B&IYTM/\/E(UHP70'&\'HI/BQ\- MX]VNOS8URW$1T+8VJ+<89+_^$D^BWX:<>R&R9ZZ.>E='Y]BS.VF16.V0DRUR MXI'N)-IF\2RF^&[WQ0\81>FT-WHF:MR+&O^'J%Q5")8]HGD+DLY1JG4Z6IH3 MU=JRC?J&3LX7R21YKALL8-58D,K" M=\JBVU)#8;@Z2DT23P_2-V 3G2BS:2]Z>E;TYQHU\TD32%T(M&LWKM0:FC!C M<'!73(^$Q.-D=*#VV"B9SH;5SGJUL_^E5G"VXL+7UI#,V=&^O(C'D^A YX#5 ML=!PK[55J#>^XQO(52-M>\;WJ_VEXIWOI0?K-W39:.\&/VC:F\I'IC>UHB;:3=P/^BM8]B]02P,$ M% @ %$@)5Z,RB]I1 @ C 4 !D !X;"]W;W)K&ULC51K3]LP%/TK5H8FD("\2\?22-!J8A.;*AC;9S>Y;2PVE>M05@"%/-1=ZYE7&;"]]7Q<5U%2?RRT(W%E+ M55.#4[7Q]58!+1VHYGX4!!._IDQX>>;6EBK/9&,X$[!41#=U3=7?:^!R/_-" M[WGACFTJ8Q?\/-O2#=R#>=@N%<[\GJ5D-0C-I" *UC/O*KR<)S;>!?QBL-># M,;%.5E(^VLG7%3)74#)#;J76N'\8?;P M0QG7)[C^<+\@QT@<_?AR^@0'CHX-$AW,<$]5F*^BQ%CB]Y@^^J*&0CC,9[^^S[XX=I%(:? MC:(EC/EK"2>.T+;2+I\DTV":^;NAC==1:3I-@S[J0&WJ'L= ME:9A>/%"GC_H%?M.?:=JPX0F'-:("\XOT)YJ>[^=&+EU[;.2!IO1#2M\+D'9 M -Q?2VRA;F([LG^ \W]02P,$% @ %$@)5TVTGG/: @ I < !D !X M;"]W;W)K&ULC55M;]HP$/XKIZ@?6FDT(4#H*D#B M9=,VK1,JZ_;9) ?QFMC,=J#[]SL[(:404+\D?KGG\7/G\]U@)]6S3A$-O.29 MT$,O-69S[_LZ3C%G^E9N4-#.2JJ<&9JJM:\W"EGB0'GFAT$0^3GCPAL-W-I< MC0:R,!D7.%>@BSQGZM\$,[D;>FUOO_#(UZFQ"_YHL&%K7*!YVLP5S?R:)>$Y M"LVE (6KH3=NWT_[UMX9_.*XTP=CL)XLI7RVDZ_)T NL(,PP-I:!T6^+4\PR M2T0R_E:<7GVD!1Z.]^R?G>_DRY)IG,KL-T],.O3N/$APQ8K,/,K=%ZS\Z5F^ M6&;:?6%7V08>Q(4V,J_ I"#GHORSERH.!P#B:0:$%2 \!G3/ #H5H.,<+94Y MMV;,L-% R1TH:TUL=N!BX]#D#1?V%A=&T2XGG!G]D :A!RUXQ!CYEBTSU,!$ M N.,+IB)&(%2!:8*$V[@N]2:]ENP*"\=Y.K(<":+I5D5&8SC6!;":+B>H6$\ MTS<$>UK,X/KJ!JZ "_B9RD+347K@&_+$ZO'C2O6D5!V>41W!@Q0FU?!)))B\ MQ?L4@3H,X3X,D_ BX;="W$(G^ !A$'8:]$S?#P\OR.G4M])Q?-TS?*\Q;<$2 MUUP(+M8VV!M47"9- 2L)(T=HG^YVU.^0)]M#)TYM>NV/MBTKF2 M6^Z>]/4X^4/Y2B_4$Z,W+BRNI2&BK0;IM1&45D#VE])*JW5Q!Y0-^;1?U!+ P04 " 4 M2 E7PBE9]@@% !*(0 &0 'AL+W=OMI^K:NVF:]H,)!JQ+8LYV2BOMCY\= M0B!-R,'MD:;] HGQ]_/8\9?'-F:P9?RK6!,BT4L4QF)HK*7\4OV((X$=NN$P,D$SKF"9B9HGBMH98+66T'[A*"= M"=KG1NAD@LZY$;J9H'MNA%XFZ*6CNQN.="Q=+/%HP-D6<5U;T?1%:HA4K8:0 MQMJ[CY*K3ZG2R=%')@GJH/?(PY2C+SA,"&)+Y-$8QP'%(?H0"\D3Y58IT)5+ M)*:A0$_D128XO%:ZSX\NNGIWC=XA&J.G-4L$CA=B8$K5.!W"#+*&3'<-<4XT MI(GN62S7 DWC!5E4Z/UZ?:=&;ZJ'DC\99_]D[IQ:X#WF-ZAI-Y!C.KGF:]_-$XS2)_D;QG(94OC;VYH]7:*PS*Y64 M5!GZKC:JGG1NQ08'9&BH6440_DR,T<\_V1WKERHW0<)<2-@4$N9!POP=K)/" M]"3]/&I;EC4PGX^]5JYTJ%&P4RNW4ZO63G>)4"5"* -%J M/,V@JMI:W^A<.8Y8HBJK9'M*VCB8LLI^M:V\U'Z0,!<2-FV5QL_N]XIC[)7K M="S+*5;R=Y7:1Y6:5MM^XY;OD J&:>>&:=?G']U+-;CY[/J1Q>\#%FV(I#N+ MK#A)#5(US+7L2X<9$N9"PJ;MTNCT6F^_RQYD1/^U#PGEH1SLCC,7&KII&V;Z-(JBW9+^5;MNM]^ M"R=GU7)KNW"IJ2!A'B3,AX3-@& %4_5R4_7^DW5Y;=1+TQXDS(6$37NE^:N\ M^O4@(_J0L!D0K."\?NZ\/N 2OG%LPB< 44LN,FV#C^B6?^++6%],R\U(2C-!:5-06D>*,W/:(4MJ],I M618J:-&S1S_\VK6>K=I$H+_3O>FD:F\J:K<:]<$N=AXDS06E34%I'BC-!Z7- MH&A%@SH'@SKG+ \%DDPM^+XEE!.T3[1$Y4V?,U&Y_JOG7NQ%2)J;T0JYH;R5 MF8(&]4!I/BAM!D4KFNQP-GPU4S]QYTD-/A$?HZ@^"^76EU4#/ $!I[G=Z M;EOH576K^J@.]#=_4)H/2IM!T7;V,X\.8B/"5^FAO$"!7M;MSJORTOS@?YP> M=[\IG]JWGEU1[NL_"J0'OP?\[E\&]YBO:"Q02)8JE'7350MFOCNXW]U(MDF/ M@>=,2A:EEVN"U<)25U"?+QF3^QL=(/_[Q.@?4$L#!!0 ( !1("5=B&W1A MQ ( "X' 9 >&PO=V]R:W-H965TGOJ^R%19$G8@2N7FR$+(@VDSETE>E M1)([4,'\* @&?D$H]]*16YO)="0JS2C'F015%061#^?(Q&;LA=[CPC5=KK1= M\--1299X@_JVG$DS\UN6G!;(%14<)"[&WEEX.NG;>E=P1W&C.F.P3N9"_+23 MRWSL!580,LRT92#FML8),F:)C(Q?#:?7OM("N^-']@OGW7B9$X43P;[17*_& MWM"#'!>D8OI:;#YBX\<)S 13[@J;IC;P(*N4%D4#-@H*RNL[N6]RZ #"Y 5 MU "BUP+B!A [H[4R9VM*-$E'4FQ VFK#9@H"67JR!#=WDSA\. (#H!R^+H2E2(\5R-?&T]6F9\U M^L]K_=$+^C]5_ 3BX!BB((IWP"?[X5/,##QT\&@;[ILDVSBC-L[(\24O\,TD M*A,5K!^#Y(+W,E&4J*D[MB5Y<%GNV;[BTS_ %!+ P04 " 42 E7&;(8UCT& M ! +0 &0 'AL+W=O;"$Q.?G= 6IO#*G+/&% M/&6++E\Q\,/,*(F[AJ8-NHD?I9W).&N;L4/JB3C^%E1U,S@A@"H1"^_'F$:XAC19+S^*. =LHQE>'N\0O= MS6Y>WLR]S^&:QK]$H5A>=H8=$L+<7\?BAFY^@N*&3,4+:,RSOV13]-4Z)%AS M09/"6,X@B=+\UW\J'L2.@=X_8& 4!L:^@7G H%<8](X=H5\8](\=P2P,S'T# MZX#!H# 8'#LEJS"P,F?E3S=SC>T+?S)F=$.8ZBUIZB#S;V8M/1*E2HJW@LFK MD;03D\]4 +'(!W*[]!E\4%X-R35-I-2YGXGEG0W"CV).OL*36/OQ>]GY[M8F M[[Y_/^X*.04%Z@;%<-?Y<,:!X7KD$TW%DA,G#2%LL'?:[?NOV;OM]H,6^ZY\ M=.7S,UZ>W]1H!?Z\3L^)9IT10S-Z3<_C"/.>=M#W][ M\A57]$HI]S)>_P O5_ T4_#,?Y;KI2!7C/GI M3Q&7&>E*KAC'SUG\@44IA' MHF':T]9A5&RXX"L_@,N.7/PYL$?H3'[X3A]H/S;Y/X<-,IB*"X\3RY1Q0AMW M'W?]7.]F] :U;@[FU-SZF++GWHA>O=- MW8G5O%5O_15O]57,T8#@)"3.:,) MN14T>"!?5FJ]D:_F$[ @XHVO][05>ZIO,&$V)LS!A+DYS-QUX5"K:;;WLI/]/T$;B0EZ\V/@O/9/#A0K8*\BP3L1L(Z"*-_@1YX2JAZ[3Q MA6V=PJFB,!M>6*W^N&S,01U,F'OD'7A(@U9T,2AU,?BW=#$#%M&0R+3\I3G/ M6WX%GS6E*-/6F9TJ%TR8C0ES,&%NNS<-Z12?<3(B299>-24#2-.IJ,TJU6:U MSL])5C%]!B!^&BIEP6?JAE,F(T)K&J?!OMK%CD_IDT+FKYZE4D-V=E=L-)E!9+UQGYF H6R<_[@'SS MXS4T";!UAJ<*$!-F8\(<3)@[K 7"GM84"(>US,AN7=L64[2W9359!TY^B<1R"7&>M*BO MT:R!QF&4+LB7^SA:%+47N4;PS*0QD6F?S:DZ0:79J#0'E>86M-T7?CC0]U2" M-6152CMU.?UU*7&IHJA9):HMZT,:XM(GGSW(+'G&H@ R$84TCE6"M@*6"ZI9 M3ZU3.EE/F#0;E>:@TMR"9NU64@SK7#/W)84T:E52QE921JND;N3WE%2$^J;* M8]&=_%3BY-W-[1U_WYK]MH-/%@8FS4:E.:@T%Y7F8=&J\MF65_4WUE>1@QMJ M&1:59J/2'%2:6] J=3RM;UK[:U&]FS[J&^:!%&A;V-7;*[O_2=Q"K0JCTFQ4 MFH-*5YF'1JF+;%HOU]FIQ'IY.#D)6?3&5J^1HN"\* MU.HO*LTY\AYW9U):!2JE4+]=^!Z&<%<5>>"M=HD1;[, MYU('KX0HU.(L*LU&I3FH-!>5YF'1JC+:UGKU]F+O_RY$H1:146DV*LTI:)7Z M_:AG[J]9F&-Z6+3JIK-MH=DXHM!\$2_!"8ZB"O MSRD5+R=J@'+3].0O4$L#!!0 ( !1("5=Z #@9=P, !<. 9 >&PO M=V]R:W-H965TP'I@GA9/Q3[P$C7%A&)U$@Z3O_]2$I1K4>$=-,76Z3N.9?G\HB/Y9'Q1Y$" M2/2<9U2LK%3*XM*V19Q"CL4%*X"J-SO&TY3F#GF%!K MO31]MWR]9 >9$0JW'(E#GF/^[1HR=EQ9KO72<4?VJ=0=]GI9X#UL0=X7MURU M[)HE(3E001A%''8KZ\J]C!8ZW@3\1> H3IZ15O+ V*-N_):L+$3J M+5$XN?[,)* 9.D?;%',XUS5/T(;ERH<"FZD\;S8W3$AT%H+$)!,?-%!-,J'[ MC^@7H,!QAC!-T%6BQDJ$Y%C[ $7/F@ $^GH#^0/POQ7N?ANBLWA@&)I2Z5*C\V.*P77I0+O%043=,.H3 6*: ))#SX%M5LRZI]U+2 M:V^0\/<#O4 3YR/R'&_2,Y[-V^%>GYS_ESWZS]D;Q9C4_IH8/O\5OE-;Q2<^ MZIOGDBDP3'I]>UJ[[F*VM)].B]<-FLW=9DS8C?&\Z:09%/5D\V??@QIJ_5JM M/ZA6?2FY^D:VDL6/M=?[I [2Z+WA4A0XAI6E%G\!_ FL]?N?W,#YU.>G,=^T#)B M3Y ;M!=&^^2DFP/?FRN&4$(.5):'DKJWOL5'D-*1N2%>:<_<"D.K6;QU3=W(#K /5^Q]19 MNVKH!/5=&PO=V]R M:W-H965TMF^)/CR7I[GMHRDDT@0QF(V-6!TD?5^&4Z-BR5$400".6" MR+\E7$(4*4\RC[]+IT854QDVG]?>?\S!2S /A,,EC7X/IV(Q-@8&FL*,9)'X M2E<_0PG(5?X"&O'\%ZW*N9:!@HP+&I?&,H,X3(I_\E02T3!P[!8#NS2P7QCT MVR(XI8&3 RTRRV%=$4$F(T97B*G9TIMZR+G)K26:,%%EO!-,CH;23DP^4P'( M1Z?H;D$8G"I&INB2QG*9<)(3+8>*$B,Z0W>"!H_H2YJ/G*L2A.(9'5V!(&'$ MC^7DZSB-Z#, (LD4?:8)K-L;IG_>0/P ["_T"9F(J] WUVAHT_'^QQOI.Y4"\3) M(_5;(GW)!!>R#&$R/UD[SR0M#-&\E!P=R6(5 \?HGW9$%T4<-X^C3I?E9&A; MOCLRETW<^V9M@.A7(/J'@UCE6ULN<[($)H\J!$_ @I #2ED80(YG2J.(,(Y2 MB3-'I*#5].Z"5V3@-Q)WAKWAX 6\?;,VX+D5/%<+[R=&$@GHC?71QE"ODS.> MD@#&AGQ?<&!+,";??X<]ZX==R]?=*B.VL>OLQNE5.+U#<+ZV0EKG70%Z6X7$ M#N[A%H1^A=#7(KPNE^);:ZF-TA6JOU7+4]OU^]9NJ(,*ZN"P1?M!^W&PO=.L MGN>_V(_:' \G:H.!8<7 \#\Z6K5QNI9[N%5N?] ?M!Q1V*J%AO6_G\'Z%+H2 M47IK+B'7[^%^"Q,-R87?P 0#I;[E& JD"&%2YV8D0E$XDZS\ 80=[P2NC=@9 MN#Y_#SV#*HR-T90\ZT0&MFM.[,,Y(?,Y@SF1RC24#(3RFR% 2Q)EH!; 3OA: MYYWA%]Z\YMEN^4[+>8=K)87U4JH\W,E#!&_<[_I G?%N:R[/&T*G9G8EF=]I^<.6YBH]1G6"S0]$Z_;\>\JU_;D[Y8['F,4%U]& M\JMCW]ZO51W6R[H-=KKO_7>5=:6WYMX?#ANJ81-B+>NP7M=] YY77'X3PU,* M@6H(BI:R^ZU'P;M*/;RM]70O_UKK8;W8T^+_J*/AG;1=R_ <+@[L6CK:>NFHY:CS@:$/UI6.TML^L6 VKNAB8//\YI++ M*F:)*&[KJM[J=O0\OQ,TZ^G%U>H-87,)$T4PDZ96SY>[E16WE45#T#2_\'N@ M0M X?UP D8>+FB#'9Y2*=4,%J.Z,)_\"4$L#!!0 ( !1("5=R18%8=P, M * + 9 >&PO=V]R:W-H965TS/H]9KJ5ZDYGB ;N:6:KR0_!M+ M33;SQAZDN*1K;J[E]A/6!8T<7B*Y+G]A6[\;>)"LM9%Y'6P9Y$Q45WI?-V(O M(!P=" CK@+#D724J6;ZGALZG2FY!N;\FR21'#7\7Y?:58@D3*[B4*7(X M>X^&,J[?3'UC63EL/ZD9+"H&X0$&D840)M/P0:28_ASOVVJ:DL+'DA9A)^"7 MM>C#('@+81 .X#7XH%UMN@-ZT'1K4$(/#T!?,L'R=0[_76)^B^K_MFH[$9S( MSG5!$YQY5D4:U0:]^1^O2!3\V<%OV/ ;=O+[<%_8K]V>X$9R>WJGC9JT46?::Z;O M>DN%"$P8M#TUH*C!MMQ16]W!X$#=<4,@/E(WJH1IA,)* N&,"4@EYU1I*%!5 M'U^K+BK8>(\-(:0_&K;3&3=TQJ<=@VU&#FJGNR9.'D)W=+VT"=;[^K,>F3^)>F^GM#4XYJ58Z&&A*Y M%J::GYK=9OQ\5PU=N]>KV?62JA43&C@N;6C0CVT[534.5@LCBW($NY7&#G3E M;69':%3N!?M\*>T85B]<@F8HG_\ 4$L#!!0 ( !1("5?YDT86%@, ,8* M 9 >&PO=V]R:W-H965TIV,>W") =B-;&9[9!6VH^?[:2!CH!:K9UV0^*/<\[S MOCC)&5:,WXH,0**[(J=B9&52KL\=1R09%%C8; U4K2P9+[!40[YRQ)H#3DU0 MD3N^ZT9.@0FUQD,S=\W'0U;*G%"XYDB418'Y_11R5HTLSWJ8F)%5)O6$,QZN M\0KF(&_6UUR-G#9+2@J@@C"*."Q'UL0[GWJ^#C [OA*HQ,X]TE(6C-WJP<=T M9+F:"')(I$Z!U64#%Y#G.I/B^-DDM=J:.G#W_B'[>R->B5E@ 142#31?A)YCTXN06*2B]-# M6P4ZF2VBAPWR+?]0/T!CE(: -$_IA)4Y MOXH/;X"KYQ'A"O,4I5B=CR4F'&UP7H(A3EF>8R[0&GC-K.&W%G8)J$'B'0%A M9+M^-W_8\H='^2>:$-*_=C?<<[<7N:';#1>U<-'3X%[7V&C/6,\+[('7#1^W M\/%1^'G]+&R4KR_@;[SG[UGH>W[4S=AO&?O/87Q=F_O[YS>TO;A;P:!5,'B* M O5I70)Y":,'^T8/!MV,GKO]0+C/I'Q=JQN<7:\'L1T=.-'>SH?.^V?OXZ;4 MKM.#L!\'!QC]+:/_O[R1&Y)'1SJPPS^/B[/36A3 5Z:!$BAA)95UE]'.MDW: MI&Y-MMOK#N\*\Q6A N6P5*&N'2O[>-TTU0/)UJ9163"IVAYSFZE&$[C>H-:7 M3#4KS4 7:%O7\6]02P,$% @ %$@)5Q*P7QU: @ [04 !D !X;"]W M;W)K&ULC51=3]LP%/TK5K0'D#;RW1:41AJMT)BT M"5$8SR:Y;2P<.[/=%O[]KIT0A394>TE\[7..S[WV=;:7ZD57 (:\UESHN5<9 MTUSYOBXJJ*F^D T(7%E+55.#H=KXNE% 2T>JN1\%P<2O*1->GKFY.Y5G=;0#:S /#9W"B._5RE9#4(S*8B" M]=S['EXM4HMW@#\,]GHP)C:39RE?;'!;SKW &@(.A;$*%'\[6 #G5@AM_.TT MO7Y+2QR.W]5O7.Z8RS/5L)#\B96FFGLSCY2PIEMN[N7^!W3Y.(.%Y-I]R;[% M3B\]4FRUD75'1@*;DG MRJ)1S0Y<;1P;LV'"GN+**%QER#/Y;VF S,@W8;]&25_:+;_[K=/_ID_Y];<4'B MX"N)@B@>H2].TY=0(#UT].@CW<=*].6(^G)$3B_Y1.^>[K&Z!A2C?#2;ECYQ M=-LANSQ)@G"6^;NAZ1%4E$S3'O7!6]Q[BT]Z>\)^L-5NE"Q C[IK!=+!OM,D MC0_,'8.2TMZ;\E);S=,,+R$)=E(.7X-DJ-=PS"='A;NE#4 ?O*6] MM_2DMP=I*,?"===XS%QZ=%Z3.$@N#\P=H](XC2<'[OQ!,]J'\!=5&R8TX;!& M7G Q11G5/BYM8&3C^O-9&NQV-ZSP/09E ;B^EMBC76!;OG_A\W]02P,$% M @ %$@)5P'^9->[ P V@\ !D !X;"]W;W)K&ULK5==CYLX%/TK%ENM6FDZ8+X"LTFD3F9'[:I319WM]J'J@X6;#ZEI4A)CI<,\#++ M$'NZQBG=SRQH/5_X2#9;H2[8\VF!-O@>BT_%DLF=W:"L2(9S3F@.&%[/K#?P M:@%#E: C_B-XSUMKH$IYH/2;VKQ;S2Q',<(I3H2"0/)CAQT/0S68GMS(HLL,)K5*;B(]V_Q75!@<)+:,KU?["O M8QT+)"47-*N3)8.,Y-4G>JR%:"5 _T2"6R>XOYK@U0F>+K1BILNZ00+-IXSN M 5/1$DTMM#8Z6U9#OP M 15>J/'4>=K-(0PB+YC:NW89IC G#,,FK$/7:^AZ@W3?)$F9 ME2D2>"5_U_*,)P15)T?21AEE@ORO+YB85]!!B]+K((CCL,?<%.8&L6]F[C?, M_4'F'^33J^B*_7.M_2,J01QY<8^P(2IR)JZ9;]#P#0;YOM>*RC^]>)=)[CNL M>'+PY0YG#YA]-3$>!%6/[RM>H 3/+.D=QVR'K?F??\#0^F( C-5DT:JI-!JM:7+1L$/]>RD< Z.D2- M#M'(ED5';GA^X$8]STQ1OG_B218W9./A\X7E>WI+TS/.UB#@N4:-!-:I'3J' M%[0SLE4U8-N%2>PZ/:L,44'@>&:K8*N?@(-T[U"RE9?84Z]!&')K&/)UX!7I M!LK"8BV6Q+^ALIRT\,&[7Q& NMJ\"A]8!C]QXU8+O=COQ)O[,U1$W< MHT;1;@U>:NJ]0VQ#<@Y2O)9ISN5$BL.J0;+:"%KH6>R!"CG9Z>56#M^8J0!Y M?TWE/%9OU'C7C//S'U!+ P04 " 42 E72G>_3I$# "K#@ &0 'AL M+W=O#'M!RV>;J$1Z)!UWWWXDIV*-W]];LC>2>.=UQ\ ME6L A;Y5)9.38*W4YC8,9;&&BL@;O@&FGRRYJ(C20[$*Y48 65BGJ@SC*,K# MBE 63,?VWKV8COE6E93!O4!R6U5$_/L.2KZ;!#CX?N.!KM;*W BGXPU9P2.H MI\V]T*.P55G0"IBDG"$!RTGP%M_.<&X805D:)A[AQ MB,]U2!J'Q 9:D]FP[H@BT['@.R2,M58S%S8WUEM'0YF9QD M<(2NT0?0V9#ZPD[E-5]>/TE ;Z4$)1%AB]H ?:!D3DNJJ+9]?0>*T%*^T5Y/ MCW?H]:LWZ!6B#'U9\ZW4/G(<*@UI7A46#="[&BCN ?I]RVY0$EVA.(H3A_O, M[WX'A7;'UCT^= ]U:MK\Q&U^8JN7]NA]X8J4Z.'S$R(V$ZZ :H7<*IAM\SS% MR2C1;W_N.$,"4"[=6S#H@<8[3(UJ' M488';MBTA4U_#+;D;'6M0%0NW/2$!.,\'QSQ.JRB88;=P%D+G'F![4Y ?(DZ M.^&OCU#-0?SM0O6JF8)\*S>D@$F@*ZX$\0S!].>?!IY[ M _^\ 4$49:MFMOSK/S_-?3+HY+Z.QV$5C]+8/4.#%G3@!7U/&6$%G(4Y. 48 M'D.>VL2X9Q$-6\3A_ZX@0T<&3RN(RZJW@HQ:O)$7[Z2J7Z%973N\2]TK>NE2 M?R&Q@_AQM.^ T46+_=PZVL@>ULCLN)"ZK-)LZ)XTW&G;^(*%?S8R/H')HV/@ M4YMLU(.[[Z+XG#9Z(6Q\3J-R6?5V*KSOJ]C?6!W;XA-GQ1D[PR]\Z=9X*;7# M-.P[-O:W;._>\+9M[.K;67I<<%UF43[*>N9OW[FQOW5[]H,9F#.*^WY=/H?4$L#!!0 ( M !1("5<-942'IP, "D- 9 >&PO=V]R:W-H965TZ%[8JF2T B8I9TA /@MN\/4"#XV# MM?A*82L[;61">>3\F^F\SV9!9(B@A*4R$D3_/<$"RM(H:8[OC6C0SFD-4X:X**LOJ?_&@2T7&(3SG$C4/<<\#I"8>D<4ALH#69#>N.*#*?"KY%PEAK M-=.PN;'>.AK*S&M\4$(_I=I/S?_F"A".T%OT 70VY*Z!%EPJ='$'BM!27NKA M+P]WZ.+5)7J%*$.?"[Z1A&5R&BI-8;3"93/C;3UC?&+&%'WD3!42_<$RR [] M0TW?AA#O0KB-O8)_;=@52J(W*([BQ,&S>+E[[,%)VHPF5B\YH;=/W[4K.;7S MP.UL-NVU7),ES *]*R6()PCFKW_#:?2[*[+_2>P@SD$;Y\"G/K^IN%#T)[&[ MD>=(F UC&AL=/I$2E'-QU**I%35GS-,\B:;A4S3K1K"I5Y!+K3T M:&(\&/=3Z#!*(NP&'+6 (R_@5R)TTDHXPS&Y;%(WW;BE&WOI'@J] M'-_JUUR=X1L[\M?#.S89G'BYDY9NXJ7[S!4ISX!-CL'2\;"'YC :)B?@<+2_ M!*(7KKTED07*]>4N42YXA?CAJG2?]Y$CI=&H1^ZRPN-3Z)W["WO1WU%&V-*% MGMLGX /'QR=-?Y_[;0ZAXSUT_ )H0!?_ 1&73C2_0(*>M:=$>( R\NP*;G%& M8>!3. QK?_-A[X7364:>P/P2.ZP)JNHJ(<:G(WR9E%/A,,+]G8?]EU[SXIR! MU9X8=U9*=!7%N+^@SMH=LNWO..R_Y-KL.^F&SEF3SL'6X+D-XU'_? X[16<% M8F5K<:E/MPU3=?'6CK;U_HVMYGZ(^(C$2O*I-[!N9:,KD:: M3=1U>=U1?&U+VT>N=*%LFX7^E@%A#/3SG.ORMNF8"=JOH_DO4$L#!!0 ( M !1("5=Q*'YI,P, (, 9 >&PO=V]R:W-H965TQ!I#H+4MS,;764FZN;%LLUY 1<,9 MD6K+$UML.)!5&92EMNLX@9T1FENS27EMSF<35LB4YC#G2!191OC[#:1L-[6P M]7'AD29KJ2_8L\F&)/ $\F4SYVIG-UE6-(-<4)8C#O'4NL97-SC2 >43ORGL MQ-X::2D+QE[UYOMJ:CFZ(DAA*74*HGZV< MIJC.I.O[62:V&J0/WUQ_9[TOQ M2LR""+AEZ1^ZDNNI-;;0"F)2I/*1[;Y!+5?M*N>#0,++0LA658' MJPHRFE>_Y*UNQ%Z ZPX$N'6 6]9=@@>2 MT%2#N /Q'D5^BD7..7,<=H9>G.W1Z M2YDE?!54V?Z\"[(6C_AJ\I@;/6(/">D;97@<:#"#] M!ND?@30J]3M0-PH&NATTV. 0UCFXI[W]R*A!1D<@C4JC+M0;PF*G]27G$#@T:JWC/QWK '3/#/$14*/:.L,G MN4[@#9!;Q\)FRWI>@_JHQA*X6;3;H3L#Z-:LL-FM]M%FZ5V?&H5#/H5;H\)F MIWIFDJ0H+3\RF_HC8VY"U[IP-%1&:U[8[%[]99@;TK4S['O1>*"4UM"PV=$> M0(@K]#U71P)"FGO1-;>+ 9?!K;MAL[U]Y9N;T'6Z"^PY0^?1>ATVF]U#QD$*T;8K,='E.4N5M19]I0S8K\+X79 M>Q.=GHY_$I[07"AWK>\ZYY\J^R;92W>D:T<".,Z$G06U, MTDB(.'P W=U,8%PCQKR ;7:+XW*V5WX6X-SI)Q5&/6#T7H5Q#_#6 MP\Z[;]R"&))G2FY!N6S+YA:^^QYM^T6%NR=KH^PIM3B3?Y4&(8[A UR)0G*$ M%2I8UT0A'"W0$,HT?,.=:0D[MDG:G>@L-%;:$81%+S/K9))79%*XEL+4&I:B MQ/( ?O$V_NP-?&@M#[Z3!]^SY$W"+ZTXA30Z@21*T@/US-\/3P[9^3_UY3^K M/VE&.ER"U/.-7N&;"D-+REKW9F&-1:NHH6B;O2M8:_L-E9('KDI7S-@7X^;8?3Y*XHLLO-_O_\NDCQ?G M9T^3%B^3XB0>IT^SEG^AZEH6[KTACFKCAY>&PAGJ.CE$A_DX]6/A67P67\[C M _&%G:?=^'ND[X;Q-5$;*C0PK*Q4='IN2U7=@.LV1C;^!=]*8^>!7];VFX#* M)=CS2MI7W&^

]0( .(( 9 M>&PO=V]R:W-H965T6JEK+B245H!4 M+M,ZJ14JZ_KL)@=B-;%3VX'MW^_8"1FD@57;7HA]_'WG\G'BD^%6R%>5 FCR M(\^X&CFIUL6-ZZHXA9RJ2U$ QY.5D#G5N)5K5Q42:&))>>8&GM=W<\JX,QY: MVT*.AZ+4&>.PD$25>4[ESPED8CMR?&=G>&3K5!N#.QX6= U+T$_%0N+.;;PD M+ >NF.!$PFKDW/HW\\C@+> [@ZW:6Q-3R8L0KV9SEXP*#XV, 4 MLLPXPC3>:I].$](0]]<[[Y]M[5C+"U4P%=DS2W0Z<@8.26!%RTP_BNT7J.NQ M"<8B4_:7;&NLYY"X5%KD-1DSR!FOGO1'K<,> ?UT$X*:$+0)X1%"KR;T/AHA MK GA1R-$-<&6[E:U6^%F5-/Q4(HMD0:-WLS"JF_9J!?CID^66N(I0YX>/P@- MQ/?))W+'8Y$#68 DRY1*0-.SE1D2E$5M'XP3KZEHE24)VKH:BS!).+&=;J3*MW@2+H] M27Y*>=T$"+^AUY#/].#WH M*N??HL__.OJ!&+VFF7K67WC$WX0J%I/MKFMHW3785SG>"74#X&6E-/[[C*_) M&=N9S[MZH8H6V6CFPMN,K_I!-'0W^P)W@*)^[Q TZ_+D#0Y!\RY/4=B #B0) M&TG"DY(\'Q$#WDJVH1EPO=,E*<&\2;C4DL6&@B]__'I1/8@HS,6J""I''I=/ MZD_:A>^*Z;>5>P\)6Y#9>\C ;ZG6$>B(9E&C6712LQG+2E/__VNDJ./OO_9: M+X2.#;JC0G0?-:,?P%02P,$% @ %$@)5Z9YJ16L! ]" !D M !X;"]W;W)K&ULM9KK;ZLV%,#_%8M)TR;UED>> MS9)(38 ]=+M;M7?;AVD?"#E)6 'GVD[22?OC9Q,*@1&G])Y^:<'X_(Y]'C8< M9WR@[(EO 1Y3N*43XR-$-N1:?)P TG K^D64OED15D2"'G+UB;?,@B6F5 2 MFXYE])81LO#0_1>B-4@SD= M;X,U/(+X;7O/Y)U94)91 BF/:$H8K";&K3WR[8$2R'K\'L&!GUP3-94%I4_J MYN?EQ+#4B""&4"A$(/_M80YQK$AR'%]RJ%'H5(*GUR]T/YN\G,PBX#"G\1_1 M4FPFQM @2U@%NU@\T,-/D$^HIW@AC7GVEQSROI9!PAT7-,F%Y0B2*#W^#YYS M0YP(2$ZS@),+.'6![AF!3B[0>:V&;B[0?:V&7B[0JPOTSPCT.<,OD/N:"HVG'CI$I8- M\JY>OG])WM?+RYF=!YC25H7!G!>#S1PM\9==>DTZUA5Q+*?3,*#YZ\6=)GM\ MG7;OZ[3[>G$70BEN-XE7;-DI@J^3\;KG@F^7+( 1NB*?ML""+.CR,.1-L7:D M]3*:6C+W4WML[D^-K]6G5ND1WP8A3 RY#'-@>S"FWWYC]ZT?FEQQ49V'JEX%_Q-92SD0=&8B[V+ MN7BQAWNQAZ<=<%O;(L$JMNT7MNV_;X+)AY]2*'RB33SM4-HF'B;,Q81YF# ? M"58)CD$1' -]I8UTYW4$O!YFZ64\O#YFY. MC>8U=K,'PVHW7SO7-UIR6%AR^.YI]B/0-0NVFR@D;L0%BQ8[!;DB\E-&?JBD MVM33#J]MZF'"7$R8APGSD6"5@+DI N8&.?5N&K-@V*NE7G.W_DTM]9J[#?JU MU&ONUJVGGG:N;[2D;96?DA9&\MV&(=W)-WR9A2%$^V 1@S:E]%K;YA0JS46E M>:@T'XM6C8:3PH*-]S:I9[7V,2;-S6FGKZFU#=1#5>@W*"S?BZO><$IO..^= MFVW>0/6C:>U/3)J+2O-0:3X6K1HE93W&UA=DVN^&>F!K1Z/6;U!I'BK-SVG# MZH9^)LO+*HZ-4L:YD.6?#[19CT:IA4M9Y;'VAYPUI MCEF(F:/2W)Q6_WSM#.N;-&HQ"8M6=6%93K)1ZDD?:;K^\#':PY+<<@Z"HWWH MZL?7.B)0JTRH- ^5YF/1JG%35IIL[%*3'MC:T9@TUVXN20WKG\^H6OV<5MN[ M![7-VSPYE)6)NLZ.SSG)=M[C$5G16AS1WV8'T[7VF3V:VPWMKCWRC@?P)?[X M>X"[@*VCE),85E*5=3V0:Q4['K$?;P3=9D?""RKD*I)=;B!8 E,=Y/,5I>+E M1BDH?N@P_0]02P,$% @ %$@)5V![0 1=! &!4 !D !X;"]W;W)K M&ULK5A=CZ,V%/TK%EVM=J5VP'PSFT2:"51MI6Q' MDV[[4/7!"4Z"!G!J.Y/=?U^;,"08P\ZDO"08SCWVL>_!%T^.A#ZQ'<8?[6]-DZQTN$+LA>UR*)QM""\1%DVY-MJ<8I550D9NV9?EF@;+2F$VJ M>P]T-B$'GF_M'7>B(N @2//L"N VPU MP.T)<.H Y[4]N'6 ^]H>O#J@DFZ>M%<3%R..9A-*CH!*M&"3%]7L5]%BOK)2 M)LJ24_$T$W%\]IEP#* -?@)+O!4)P,$CWA/*LW(K[GT6F;I$.69@]0TL$'T2 M[0\QYBC+V4?Q_,LR!A_>?03O0%:"/W;DP%"9LHG)Q<@DO[FN1W%_&H7=,PH' M+$C)=PPD98I337P\'.\/Q)MB1IIIL5^FY=X>)/SM4-X Q_H1V);M:,8S?WVX MK9/S_WI/KNZ]-1E.DR-.Q>?VY8A8=2:S0+>PIU"_"I5OI><9M"S+"2;F\^5\ M=6&1Z[A.&Q5KR*(@B*PV+-' ?,\+O0;6DNDV,MU!F0^8KH4!Q.L1D U8DU*V M**K>9S1C3SKU)\;PX&*%Z3\Z M:8,,9=5.#:JF'B+@KZ4>1[2IYI8+8?!HX^V8)&93"ZKTZ,$%X,Q;H1 M^A7U6E@0*B^?6,_F18I\/9OOZ^6'C?QP4/X=IJ1*(? >%?M/(,8;46?A0>\- M,K[5>V.2Q6.2)2.1M98E:I8ENMY[4<<(KNVX2O)U04[@J2_W+BAT55#2!06> M%>C3#EKGRLX:W7(!R[45[34N5&"*^#XV9=M/^G ]&SJ\*&[AL/<.HGXF M\E-DT&[#+&_UVZAL\:ALR5AL[?6PS^MA7V^Z.K;E.BORUQQ&>YZD? M!V;9G]67@N;B&P]7U53;T]7;HO(6T.&BKE69^+(_]JI.E M,_WIS'"!Z#8K&[)1NF)DMWH;FIU&5GA2)<(DBD[#BG$9Y)FW7>H\4S4) M+O%2@ZFKBNGO,Q2JF01Q\&"XXMN2G"',LQW;XC72S>Y2VUW8JQ2\0FFXDJ!Q M,PFF\=DR=7@/^,*Q,7MK<)FLE+IUF_-B$D0N(!2X)J? [.L.YRB$$[)A?.LT M@]ZE(^ZO']3?^MQM+BMF<*[$5UY0.0G>!%#@AM6"KE3S'KM\3IS>6@GCG]!T MV"B =6U(51W91E!QV;[9?5>'/8+5&28D'2$Y)(P?(:0=(7VNAW%'&#_7PTE' M\*F';>Z^< M&+,^T:D [M%5S"U]]S[;UXM+=DVO2]I1;'N4?%2'$*;R"=TH5 M#1<"F"S@$Y6HX5P2DUN^$@A38Y ,'"V0&!<&/N,]U4P<6^+-]0*.7AS#"^ 2 M+JR"O0 F"\E&YWR$ZRZ261M)\D@D*5PH2:6!I2RP&. OGN:?/L$/;57ZTB0/ MI9DE3PI^J.4(TN@E)%&2#L0S?SX]&4KG_[PO_]G[;\5(^WN2>KWQ(WK32FGB M/YCO;K7Y\VH,??!6\M1+NH%UE\=9>+=?PA811_N0T0%H,0!*#D'+OX#:I,.] M1JE0;_V$,K!6M:2V%KVU'X)3W_L']EE\-H\'[ L[--L9]TN^G;@73&^Y-"!P M8UU%H]>VCW4[Q=H-J9UOTY4BV_1^6=K!C]H![/E&V5;M-LY!_RO)?P)02P,$ M% @ %$@)5T01JL=6 @ -@4 !D !X;"]W;W)K&UL?53;;MLP#/T5PNA#"VSU+ Y#*NN4?C0UHH7G1D@S#VIK=Y=A:(H:&V;.U0XEW6R5 M;I@E4U>AV6EDI4]J1)A$T2QL&)=!GGG?K1 ' MKXX[7M76.<(\V[$*[]$^[&XU6>&(4O(&I>%*@L;M/%C$E\NIB_QVF47&3ATX'2D['TY&AI&E :/TD#HS7*X@6L M9M((Y@;_$(L>;;K/8A(=IC =*4R/4J"NXMC50S6GAY3'L_^5AWNSW*"N_,8: M*-R$]6,]>L='8='OPEMX_Z+<,%UQ:4#@EE*C\T]$0?=;VAM6[?QF;)2E/?/' MFAXVU"Z [K>*MF,P7('QJQV557]8)(+1)O8U'9@I^J/KQ-" B%X"A.^Y.G[.-K+GX*A< "GU+8B:'UD*IY9UMRV !"96W? E,OYEQD5"E;\7_LTDL8) =(\8D,* U RP=\3 +0S<'.@FLQS6 U5T-!!\C40V6GO++O+:Y-8:3<2R M:7Q20K^-M)T:?> *$';1#7K+>;B.XAA1%J+?U ($>L<49?-H&@,:2PE*ZF$/ M,(M8I. FUN4/&X9#/3P_HZLTU>H,BACXM>"JU4?\ MO15<2D03GC+5!&9C[>?6&8]6HVZWYSD#>[6;LS%&1M\[N:0!#"W-3PEB!=;H M^^^P[_QH0."6"%PC@G$0I$D:4Z6G4.,0*OJ'9K1J0K/QU-E!MP3$& M/!..5\+QC' ^Z'XWI3%E 30A\ X0^#[IN#4 WL&L^3W7Q^6HODBF(OYH0&(/\_^)N@+;D M;*\>?ED/_U74\0^FJHL=OS93QA!G NB6 +JM,:?;P!R']&IHC/'.1-,KT?1> M0YS>(26<;CU_8X0S\^^7^??;IA?Z%WW)%W<]@>,5""U6C-0S)G J]5IRME@8J].I]]8<^7S>NU>8H&*/<"0"M4K6%,WX/9X:D?1%O> M]N%70@:_3LG@0RG3Z3BDU@',0"ZB2L[@5^D9 M?"A5/.(=S(HQQKD8*N&#SA2\AJ7"EJ;!95$WR'UW]Q_EK)%]JORW)I0+W)<07KM07-LNO%]MO M@P#K$/> Z9>08+C28-@LPD[JO_W#_MLG_7X=T26$$JF$$C%+F!?Z;V&]ORKV MW?H/I3G(N2 J:4/,TN8(J4[MO.8HIQ*N+6_[-=G9N#'KG98Z[PM1B+-IO8T% M:%4KV3L[?]FVZWLJYA&3*(:9=N_<=C71Q&8G&ULE95=;YLP%(;_BH5ZT4I;('PE M5 2I'^K62MNJIMVNG7 (5HV=V:9T^_6S#479XC3:3?"QSWF?]Q XY!T7S[(& M4.BUH4PNO%JI[;GORW4-#983O@6F3RHN&JQT*#:^W K I2UJJ!\&0>HWF#"O MR.W>O2ARWBI*&-P+)-NFP>+7)5#>+;RI][;Q0#:U,AM^D6_Q!I:@GK;W0D?^ MJ%*2!I@DG"$!U<*[F)Y?9B;?)GPGT,F=-3*=K#A_-L%MN? "8P@HK)51P/KR M E= J1'2-GX.FMZ(-(6[ZS?U&]N[[F6%)5QQ^H.4JEYX?8:A MG\3HK3F5]A=U0V[@H74K%6^&8NV@(:R_XM?A/NP4A.&!@G H"*WO'F1=7F.% MBUSP#@F3K=7,PK9JJ[4YPLR?LE1"GQ)=IXJO7 &:1N@C^L1YV1%*$68E^J9J M$.B6*GH-"A,JS] )(@P]UKR5 M6EKFOM*^#=U?#QXO>X_A 8]W+9N@*/B PB",T-/R&IV>G/TMX^NVQ][#L??0 MZL8'=!_ /+6E;E0W8+1=UGJ)U$J8)_REB*)@GOLO#G T@J-WP9H5NUA]5;+# MBN-@ZF;%(RL^QDI9FI2,K/<::N5BIBS5SLV8C M:W:,-7>Q9@Y6$KA9\Y$U?Y?UJ%\\P)4"X2+.]XE!=JB];$1F[R.YPM1%R_:> M_30-D^@?FK\S?[++6WQ,0 M)D&?5UP/I2$P,V[\0A5_ %!+ P04 " 42 E7N>'%[LEI@P)TWL MV$JD":\5)0Q6 LFZ++%XO07*]W/'=]X&'LBV4&; 39,*;^$1U%.U$KKG=BXY M*8%)PAD2L)D[-_[U(C+Q-N W@;WLM9')9,WYL^E\R^>.9X" 0J:, ]:?'2R M4F.D,?ZVGDZWI!'VVV_N7VSN.I])Q3TYRKP1( [O#M ;$-XAQ-LYX68$BEKO"K_I.JL$=:JRC'E < MQM,#ZN.@F1]%P]1A1QV>I+:';8@H/%HL\KP#H..8\&HZS!-U/-'G//TC?X'N M.9=3;2.: MQZKI*%[9^[[F2K\>MEGH]QV$"=#S&Z[O?-LQ3TCWCY'^ U!+ P04 " 4 M2 E7HN/BG$P" _!@ &0 'AL+W=O Q.'F1=X)\>&[@IM M'3B)*[*#9]#?J[4T%NY4,EH"5U1P)"&?>0_!=!59O /\H'!0O36RF6R%>+7& M8S;S?'L@8)!JJT#,:P\+8,P*F6/\:C6]+J0E]M9\\E$%.:J8WXO %VGPF5B\53+DG.C38B>^AM%9:E"W9G*"DO'F38UN''L'H M#!/"EA"^)8PO$**6$-T:8=P2QK=&F+0$ESIN%6Q)-DEB* Y(6;=3LPE7? ML4V]*+?WY%E+LTL-3R??A 843- '],A340)Z(4?T;@F:4*;0"QQU3=C[&&L3 MRS)PVNK.&]WP@FZ$G@37A4(KGD$VP%]>Y]]?X6.38Y=H>$IT'EX5_%KS$8K\ M.Q3Z831PGL7M]' HG?^+OOKGZ&?%B+JO'CF]\06]59Z#Z]#^5]\0 M4D:)[>,[M :9 M=#%Z )$30WR\ZC?>*/PLE]C/?]N@[#HO -SV.H" M+.A@33UPKR-*D#LWBA1*1(06Y"^:./IF%E,ZX:0XO*]>-6:-/=;EF8"0_2 LQ^+DQ/MH8-T/TS MDC]02P,$% @ %$@)5^9MN[<]! -Q4 !D !X;"]W;W)K&ULU5AK;]LV%/TKA#8,+>!$HOS(8[:!.$&W#$UGQ&V'8=@' M6KJVB4BD2U)V NS']U*693M6V-I3,"P?8E+DN>2Y/% 1CRF"9" M][R9,?-+W]?1#%*F3^4=1;7[CGTYFQ%_Q^=\ZF, +S:3Y4V//+*#%/ M06@N!5$PZ7E7]/*:GEM /N,SAZ7>:A-+92SE@^WZ MVEE.ZX89UN\JN23*SL9HMI'G)D/V??J"=X.@_B;_D!%$4L3D"HLNAI@P;-^#-@S/ MF%PKB+DA5U,%@..FQ%6EP[F/0]-14["=E+7*E+6<*;/GC3K71F66=(.\PY4P M03(3E3IH[1T=;0;/SF[%RKGND:S:):OVO]2S$W_H :Z"M;];SYV21L=- XP! M5+"V90KB+F8MIPG)(S[*'L.GM'?N;@=E9R.SM,>+<"N6(QDGLLQP89 MK:IR""K"87Q\5O%T+G$HSU4P2K>(!J=!IU7-\[SD>?X?W),0-TBDM.TI&[N"#JFSTQQ-DX@3U-5*BXJ-4'#]K.;G7,?1[*DP<:P!/\KC;'';VK, MS>A0D=45;3?_6X:1OK+.B@7.=W46/E.9>QO'TMR81.IVB:\FLZ'"UZ#C9%2K M+ZTKVFY^-^Z5NNUK#3)J5MZO@KW[E7LGQS+=F$[J=IVOIB3$93B,DQD2%[*JXH+B(^9TDETBZ?5 M/&MRU[L\-[Z9NHWSJ]=._M[T7C+AKI5:O7==T79SNO'HU&W2#WT++L)M%T7K MA:*HU?_Z6U^U["?%.Z:F7&B2P 3#!Z=GJ%ZU^DJWZA@YSS]TC:4Q,LV;,WR8 M@+(3<'PBI5EW[+>S\EMI_RM02P,$% @ %$@)5P>0U=+( @ '0D !D M !X;"]W;W)K&ULK59K3]LP%/TK5H8F)@%YM6G% MTDBC%1I3F1",[<.T#VYRVUHX=F8[+4C[\;.=$*4/,ICZI?7CGG//N=>6$Z^Y M>)!+ (4><\KDR%DJ59R[KDR7D&-YQ@M@>F?.18Z5GHJ%*PL!.+.@G+J!YT5N MC@ESDMBNW8@DYJ6BA,&-0++,+H#R]>%6[)8*K/@)G&!%W 'ZKZX M$7KF-BP9R8%)PAD2,!\YG_SS\=#$VX#O!-:R-4;&R8SS!S.YRD:.9P0!A509 M!JS_5C &2@V1EO&[YG2:E ;8'C^S7UKOVLL,2QAS^H-D:CERA@[*8(Y+JF[Y M^C/4?OJ&+^54VE^TKF('/0>EI50\K\%:04Y8]8\?ZSJT /Y+@* &!*\%A#4@ MM$8K9=;6!"N1L<34)A0^4%OW=]-T/'1!W2$"$/7A%+=#QF[2LLQ MI&Y:I[ZH4@B;<%<7H:E$T%0BL'R] M%_B^<84IHHUM4XU]IBJ6R+*8.[)*^H/87;6%=R8R]_)<%CB%D:,OG@2Q B=Y M_\Z/O(\=-L+&1MAI8UP* 4RA@@MS3_8YJ CZ+0>GO2T'X8[)5LB&KEZCJ]>I M:[I1V!,$CRDM,\(6^I3_4W%O1W$_W%+A%NGY[.1/]I8]#8&'3:N(45IRMS MKL8",J+0)4X))>JIZ2+Z@Z8:A/C\.:2KOYW9WMK? Y%M%&;8%&9XD/X.=RY2 ML'W7.A.]U8;;>KS,A\,U%@O")*(PU_3>V4 ?-5$]QM5$\<*^9S.N].MHATO] M_0+"!.C].==O6CTQ3V3S193\!5!+ P04 " 42 E7D>7HK0D# K"P M&0 'AL+W=O?-R M_;60+VH!H-%KS+@:. NMEU>NJZ8+B(FZ$$O@YLY,R)AHLY1S5RTED"@-BIGK M>U[@QH1R)^RGUQYEV!>)9I3#HT0JB6,BWZZ!B?7 P<[FPHC.%]I><,/^DLQA M#/IY^2C-RBVR1#0&KJC@2,)LX'S"5]>X9P/2'=\HK-76.;*M3(1XL8N[:.!X MMB)@,-4V!3&'%=P 8S:3J>-7GM0IF#9P^WR3_39MWC0S(0IN!/M.([T8.#T' M13 C"=,CL?X,>4,=FV\JF$I_T3K;VS7$::*TB/-@LXXISX[D-7\06P&^7Q/@ MYP%^6G<&2JL<$DW"OA1K).UND\V>I*VFT:8XRNU;&6MI[E(3I\.O0@/" 3I' M=SR"B8:(@U)F.3;O/TH8(#%##T0GDNHW=#H$32A39^@$48Z>%B)1A$>J[VI3 MB\WH3G/N=<;U:[A?$GZ!6MX'Y'M^"SV/A^CTY.SO-*YII>C'+_KQT[SMFKPC ML%*,0-JZ;>ZJTK(409K"RG85&A%[?7=5 6X5X%8CV+#:5:PLJK/%:M>RV@6K MO8_5J6*U_X'5*5B=?:R@BM79975K84$!"QIA]X+/SY] QFAHM%B%#7:PG7IL MM\!VF[%F;?5R(R&B&OUX@'@"\B?ZC4:P$FQ%^7QS[Y9,*;.?PF9359&--.NS M5VI)IC!PC)$JD"MPPO?O<.!];/@ >D4OO?__ 'H[3['F"5X6U,NCU']Y* A[ MI6%Y1XD_#SN$M66.^"CQYV';++]5*T-$ M-PJ[.%FWSM(VWC7!>O='93#'BU).HJ4N;*TRL M!PZ@V$G!0WN"1^&8\+91#'PRDG!^,J9>V"82BY5H$VGF7!= ML%0/#NZZ&31AS5,P(96-[2*X[TF]? =8ST @X[P1V N=830HB=94B2LSL8NM M\1$4U./;56D4SA19=7OG8>M@;R;(1*J,JB9,-UR;1@-.[!^"R/1% MBHSJ%_C&*6'KC-!8 SB+#<,O<++C;=!@LF!<,U'/YBS+J'AT5##TFDS,GPA; M_&9]1G.RX/JV 8=A._Y,,[8HTF;5-12B7M6./T%ZW:0Y")I83&1T2;-Q/56S MB1T&9F"BUA;CO+ X_U,^?30?AV':^EZDC_KT M41_GY4/&]H/%\?NDYO)GFJ9QG"181<=CKX(Q5K:T#\=0./-/7O-A8'/+!=P'H'XOOC0$_Y?>(8 M=A73ACW!.)*F& *]Z._1)$&JD\#'OS_84Q+':>I' /,KB&,,@:<11S %H %# MXMB^!W?>1]'Z/16U_S<;_0902P,$% @ %$@)5Y>*NQS $P( L M !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,. M\,W2?S+W\PPU1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'9L-#+%6M3<_*4W0L$O2]W4W,)ALQJ932-X:=9"V+H: MQ>-Q/JJY5(.+\UU9=\W(/]!6%%9J!2?;$X]2/)O7W]M#]B2-7,A*VI?IP'VO MQ(#54LE:_A3E=# >,+/6S__H1O[4RO)J7C2ZJJ:#J/OA4316%N].SUO(![XP M[HSEBWL.(--!/H8"E[(QUEWARN? ^"3@XNYH:_65K*QH9MR*SXW>;J1:M<7 M4XR\QW!QV'UV03QK_D\8]7(I"S'3Q;86RG9Q;$35 BJSEALS8(K78CK87<(N M5J*PJN;9\4;GU==D]M =>+87,FX8?FNG3@AX/\J%4IE!$E@V]& M5[($CI+]S2NN"L$\R!B!C(\(^37V(!,$,CD*Y+S%@;]ZD"D"F1X1,HADAD!F MQX1,/,@<@

6=. 8@4 (XO / " 6XQ M 0!X;"]W;W)K8F]O:RYX;6Q02P$"% ,4 " 42 E7L 4 O38" <*@ M&@ @ ']-@$ >&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-0 M2P$"% ,4 " 42 E7X XML 83 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 84 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 85 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.2 html 205 336 1 false 61 0 false 6 false false R1.htm 000 - Document - Document And Entity Information Sheet http://www.ufpt.com/20230630/role/statement-document-and-entity-information Document And Entity Information Cover 1 false false R2.htm 001 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) Sheet http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited Condensed Consolidated Balance Sheets (Current Period Unaudited) Statements 2 false false R3.htm 002 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) Sheet http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) Statements 3 false false R4.htm 003 - Statement - Condensed Consolidated Statements of Income (Unaudited) Sheet http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited Condensed Consolidated Statements of Income (Unaudited) Statements 4 false false R5.htm 004 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) Sheet http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited Condensed Consolidated Statements of Stockholders' Equity (Unaudited) Statements 5 false false R6.htm 005 - Statement - Condensed Consolidated Statements of Cash Flows Sheet http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows- Condensed Consolidated Statements of Cash Flows Statements 6 false false R7.htm 006 - Disclosure - Note 1 - Basis of Presentation Sheet http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation Note 1 - Basis of Presentation Notes 7 false false R8.htm 007 - Disclosure - Note 2 - Acquisitions and Divestiture Sheet http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture Note 2 - Acquisitions and Divestiture Notes 8 false false R9.htm 008 - Disclosure - Note 3 - Revenue Recognition Sheet http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition Note 3 - Revenue Recognition Notes 9 false false R10.htm 009 - Disclosure - Note 4 - Supplemental Cash Flow Information Sheet http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information- Note 4 - Supplemental Cash Flow Information Notes 10 false false R11.htm 010 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses Sheet http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses Note 5 - Receivables and Allowance for Credit Losses Notes 11 false false R12.htm 011 - Disclosure - Note 6 - Fair Value of Financial Instruments Sheet http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments Note 6 - Fair Value of Financial Instruments Notes 12 false false R13.htm 012 - Disclosure - Note 7 - Share-based Compensation Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation Note 7 - Share-based Compensation Notes 13 false false R14.htm 013 - Disclosure - Note 8 - Inventories Sheet http://www.ufpt.com/20230630/role/statement-note-8-inventories Note 8 - Inventories Notes 14 false false R15.htm 014 - Disclosure - Note 9 - Property, Plant and Equipment Sheet http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment Note 9 - Property, Plant and Equipment Notes 15 false false R16.htm 015 - Disclosure - Note 10 - Leases Sheet http://www.ufpt.com/20230630/role/statement-note-10-leases Note 10 - Leases Notes 16 false false R17.htm 016 - Disclosure - Note 11 - Income Per Share Sheet http://www.ufpt.com/20230630/role/statement-note-11-income-per-share Note 11 - Income Per Share Notes 17 false false R18.htm 017 - Disclosure - Note 12 - Segment Reporting Sheet http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting- Note 12 - Segment Reporting Notes 18 false false R19.htm 018 - Disclosure - Note 13 - Goodwill and Other Intangible Assets Sheet http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets- Note 13 - Goodwill and Other Intangible Assets Notes 19 false false R20.htm 019 - Disclosure - Note 14 - Other Long-term Liabilities Sheet http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities Note 14 - Other Long-term Liabilities Notes 20 false false R21.htm 020 - Disclosure - Note 15 - Income Tax Sheet http://www.ufpt.com/20230630/role/statement-note-15-income-tax Note 15 - Income Tax Notes 21 false false R22.htm 021 - Disclosure - Note 16 - Indebtedness Sheet http://www.ufpt.com/20230630/role/statement-note-16-indebtedness Note 16 - Indebtedness Notes 22 false false R23.htm 022 - Disclosure - Item 5 - Other Information Sheet http://www.ufpt.com/20230630/role/statement-item-5-other-information- Item 5 - Other Information Notes 23 false false R24.htm 023 - Disclosure - Note 2 - Acquisitions and Divestiture (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables Note 2 - Acquisitions and Divestiture (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture 24 false false R25.htm 024 - Disclosure - Note 3 - Revenue Recognition (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables Note 3 - Revenue Recognition (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition 25 false false R26.htm 025 - Disclosure - Note 4 - Supplemental Cash Flow Information (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables Note 4 - Supplemental Cash Flow Information (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information- 26 false false R27.htm 026 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables Note 5 - Receivables and Allowance for Credit Losses (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses 27 false false R28.htm 027 - Disclosure - Note 6 - Fair Value of Financial Instruments (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables Note 6 - Fair Value of Financial Instruments (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments 28 false false R29.htm 028 - Disclosure - Note 7 - Share-based Compensation (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables Note 7 - Share-based Compensation (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation 29 false false R30.htm 029 - Disclosure - Note 8 - Inventories (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables Note 8 - Inventories (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-8-inventories 30 false false R31.htm 030 - Disclosure - Note 9 - Property, Plant and Equipment (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables Note 9 - Property, Plant and Equipment (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment 31 false false R32.htm 031 - Disclosure - Note 10 - Leases (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-10-leases-tables Note 10 - Leases (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-10-leases 32 false false R33.htm 032 - Disclosure - Note 11 - Income Per Share (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables Note 11 - Income Per Share (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-11-income-per-share 33 false false R34.htm 033 - Disclosure - Note 12 - Segment Reporting (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables Note 12 - Segment Reporting (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting- 34 false false R35.htm 034 - Disclosure - Note 13 - Goodwill and Other Intangible Assets (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables Note 13 - Goodwill and Other Intangible Assets (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets- 35 false false R36.htm 035 - Disclosure - Note 14 - Other Long-term Liabilities (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables Note 14 - Other Long-term Liabilities (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities 36 false false R37.htm 036 - Disclosure - Note 16 - Indebtedness (Tables) Sheet http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables Note 16 - Indebtedness (Tables) Tables http://www.ufpt.com/20230630/role/statement-note-16-indebtedness 37 false false R38.htm 037 - Disclosure - Note 2 - Acquisitions and Divestiture (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual Note 2 - Acquisitions and Divestiture (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables 38 false false R39.htm 038 - Disclosure - Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details) Details 39 false false R40.htm 039 - Disclosure - Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details) Details 40 false false R41.htm 040 - Disclosure - Note 3 - Revenue Recognition (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual Note 3 - Revenue Recognition (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables 41 false false R42.htm 041 - Disclosure - Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details) Details 42 false false R43.htm 042 - Disclosure - Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details) Details 43 false false R44.htm 043 - Disclosure - Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details) Details 44 false false R45.htm 044 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details) Details 45 false false R46.htm 045 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details) Details 46 false false R47.htm 046 - Disclosure - Note 6 - Fair Value of Financial Instruments (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual Note 6 - Fair Value of Financial Instruments (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables 47 false false R48.htm 047 - Disclosure - Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details) Details 48 false false R49.htm 048 - Disclosure - Note 7 - Share-based Compensation (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual Note 7 - Share-based Compensation (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables 49 false false R50.htm 049 - Disclosure - Note 7 - Share-based Compensation - Compensation Cost (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details Note 7 - Share-based Compensation - Compensation Cost (Details) Details 50 false false R51.htm 050 - Disclosure - Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details) Details 51 false false R52.htm 051 - Disclosure - Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details) Details 52 false false R53.htm 052 - Disclosure - Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details) Details 53 false false R54.htm 053 - Disclosure - Note 8 - Inventories - Summary of Inventory (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details Note 8 - Inventories - Summary of Inventory (Details) Details 54 false false R55.htm 054 - Disclosure - Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details) Details 55 false false R56.htm 055 - Disclosure - Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details) Details 56 false false R57.htm 056 - Disclosure - Note 10 - Leases - Lease Cost (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details Note 10 - Leases - Lease Cost (Details) Details 57 false false R58.htm 057 - Disclosure - Note 10 - Leases - Aggregate Future Lease Payments (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details Note 10 - Leases - Aggregate Future Lease Payments (Details) Details 58 false false R59.htm 058 - Disclosure - Note 11 - Income Per Share (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual Note 11 - Income Per Share (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables 59 false false R60.htm 059 - Disclosure - Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details) Details 60 false false R61.htm 060 - Disclosure - Note 12 - Segment Reporting (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual Note 12 - Segment Reporting (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables 61 false false R62.htm 061 - Disclosure - Note 12 - Segment Reporting - Net Sales by Market (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details Note 12 - Segment Reporting - Net Sales by Market (Details) Details 62 false false R63.htm 062 - Disclosure - Note 13 - Goodwill and Other Intangible Assets (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual Note 13 - Goodwill and Other Intangible Assets (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables 63 false false R64.htm 063 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details) Details 64 false false R65.htm 064 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details) Details 65 false false R66.htm 065 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details) Details 66 false false R67.htm 066 - Disclosure - Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details) Details 67 false false R68.htm 067 - Disclosure - Note 15 - Income Tax (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual Note 15 - Income Tax (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-15-income-tax 68 false false R69.htm 068 - Disclosure - Note 16 - Indebtedness (Details Textual) Sheet http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual Note 16 - Indebtedness (Details Textual) Details http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables 69 false false R70.htm 069 - Disclosure - Note 16 - Indebtedness - Long-term Debt (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details Note 16 - Indebtedness - Long-term Debt (Details) Details 70 false false R71.htm 070 - Disclosure - Note 16 - Indebtedness - Schedule of Maturity (Details) Sheet http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details Note 16 - Indebtedness - Schedule of Maturity (Details) Details 71 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 38 fact(s) appearing in ix:hidden were eligible for transformation: dei:EntityRegistrantName, ufpt:BusinessCombinationAgreementTerm, ufpt:NumberOfMajorCustomers, us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount, us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred, us-gaap:CommonStockParOrStatedValuePerShare, us-gaap:CommonStockSharesAuthorized, us-gaap:CommonStockSharesIssued, us-gaap:CommonStockSharesOutstanding, us-gaap:DebtInstrumentBasisSpreadOnVariableRate1, us-gaap:NumberOfOperatingSegments, us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired, us-gaap:PreferredStockParOrStatedValuePerShare, us-gaap:PreferredStockSharesAuthorized, us-gaap:PreferredStockSharesIssued, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate, us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue, us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1, us-gaap:TreasuryStockCommonShares - ufpt20230630_10q.htm 8, 15, 16, 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 ufpt20230630_10q.htm ex_553421.htm ex_553422.htm ex_553423.htm ufpt-20230630.xsd ufpt-20230630_cal.xml ufpt-20230630_def.xml ufpt-20230630_lab.xml ufpt-20230630_pre.xml http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 true true JSON 88 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "ufpt20230630_10q.htm": { "axisCustom": 0, "axisStandard": 25, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 813, "http://xbrl.sec.gov/dei/2023": 29 }, "contextCount": 205, "dts": { "calculationLink": { "local": [ "ufpt-20230630_cal.xml" ] }, "definitionLink": { "local": [ "ufpt-20230630_def.xml" ] }, "inline": { "local": [ "ufpt20230630_10q.htm" ] }, "labelLink": { "local": [ "ufpt-20230630_lab.xml" ] }, "presentationLink": { "local": [ "ufpt-20230630_pre.xml" ] }, "schema": { "local": [ "ufpt-20230630.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/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/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/currency/2023/currency-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/exch/2023/exch-2023.xsd", "https://xbrl.sec.gov/naics/2023/naics-2023.xsd", "https://xbrl.sec.gov/sic/2023/sic-2023.xsd", "https://xbrl.sec.gov/stpr/2023/stpr-2023.xsd" ] } }, "elementCount": 515, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2023": 36, "http://www.ufpt.com/20230630": 3, "http://xbrl.sec.gov/dei/2023": 6, "total": 45 }, "keyCustom": 27, "keyStandard": 309, "memberCustom": 31, "memberStandard": 30, "nsprefix": "ufpt", "nsuri": "http://www.ufpt.com/20230630", "report": { "R1": { "firstAnchor": { "ancestors": [ "b", "p", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "000 - Document - Document And Entity Information", "menuCat": "Cover", "order": "1", "role": "http://www.ufpt.com/20230630/role/statement-document-and-entity-information", "shortName": "Document And Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "b", "p", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "009 - Disclosure - Note 4 - Supplemental Cash Flow Information", "menuCat": "Notes", "order": "10", "role": "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-", "shortName": "Note 4 - Supplemental Cash Flow Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "010 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses", "menuCat": "Notes", "order": "11", "role": "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses", "shortName": "Note 5 - Receivables and Allowance for Credit Losses", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "011 - Disclosure - Note 6 - Fair Value of Financial Instruments", "menuCat": "Notes", "order": "12", "role": "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "shortName": "Note 6 - Fair Value of Financial Instruments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "012 - Disclosure - Note 7 - Share-based Compensation", "menuCat": "Notes", "order": "13", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "shortName": "Note 7 - Share-based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "013 - Disclosure - Note 8 - Inventories", "menuCat": "Notes", "order": "14", "role": "http://www.ufpt.com/20230630/role/statement-note-8-inventories", "shortName": "Note 8 - Inventories", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "014 - Disclosure - Note 9 - Property, Plant and Equipment", "menuCat": "Notes", "order": "15", "role": "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment", "shortName": "Note 9 - Property, Plant and Equipment", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "015 - Disclosure - Note 10 - Leases", "menuCat": "Notes", "order": "16", "role": "http://www.ufpt.com/20230630/role/statement-note-10-leases", "shortName": "Note 10 - Leases", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "016 - Disclosure - Note 11 - Income Per Share", "menuCat": "Notes", "order": "17", "role": "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share", "shortName": "Note 11 - Income Per Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "017 - Disclosure - Note 12 - Segment Reporting", "menuCat": "Notes", "order": "18", "role": "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "shortName": "Note 12 - Segment Reporting", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "018 - Disclosure - Note 13 - Goodwill and Other Intangible Assets", "menuCat": "Notes", "order": "19", "role": "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-", "shortName": "Note 13 - Goodwill and Other Intangible Assets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "001 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited)", "menuCat": "Statements", "order": "2", "role": "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "shortName": "Condensed Consolidated Balance Sheets (Current Period Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "019 - Disclosure - Note 14 - Other Long-term Liabilities", "menuCat": "Notes", "order": "20", "role": "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities", "shortName": "Note 14 - Other Long-term Liabilities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherLiabilitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "020 - Disclosure - Note 15 - Income Tax", "menuCat": "Notes", "order": "21", "role": "http://www.ufpt.com/20230630/role/statement-note-15-income-tax", "shortName": "Note 15 - Income Tax", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "021 - Disclosure - Note 16 - Indebtedness", "menuCat": "Notes", "order": "22", "role": "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "shortName": "Note 16 - Indebtedness", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:IssuerRule10b51MaterialTermsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "022 - Disclosure - Item 5 - Other Information", "menuCat": "Notes", "order": "23", "role": "http://www.ufpt.com/20230630/role/statement-item-5-other-information-", "shortName": "Item 5 - Other Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:IssuerRule10b51MaterialTermsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "023 - Disclosure - Note 2 - Acquisitions and Divestiture (Tables)", "menuCat": "Tables", "order": "24", "role": "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables", "shortName": "Note 2 - Acquisitions and Divestiture (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "024 - Disclosure - Note 3 - Revenue Recognition (Tables)", "menuCat": "Tables", "order": "25", "role": "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables", "shortName": "Note 3 - Revenue Recognition (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "025 - Disclosure - Note 4 - Supplemental Cash Flow Information (Tables)", "menuCat": "Tables", "order": "26", "role": "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables", "shortName": "Note 4 - Supplemental Cash Flow Information (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "026 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses (Tables)", "menuCat": "Tables", "order": "27", "role": "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables", "shortName": "Note 5 - Receivables and Allowance for Credit Losses (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "027 - Disclosure - Note 6 - Fair Value of Financial Instruments (Tables)", "menuCat": "Tables", "order": "28", "role": "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables", "shortName": "Note 6 - Fair Value of Financial Instruments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsByAwardTypeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "028 - Disclosure - Note 7 - Share-based Compensation (Tables)", "menuCat": "Tables", "order": "29", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables", "shortName": "Note 7 - Share-based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsByAwardTypeTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": null, "groupType": "statement", "isDefault": "false", "longName": "002 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)", "menuCat": "Statements", "order": "3", "role": "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "shortName": "Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "029 - Disclosure - Note 8 - Inventories (Tables)", "menuCat": "Tables", "order": "30", "role": "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables", "shortName": "Note 8 - Inventories (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "030 - Disclosure - Note 9 - Property, Plant and Equipment (Tables)", "menuCat": "Tables", "order": "31", "role": "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables", "shortName": "Note 9 - Property, Plant and Equipment (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PropertyPlantAndEquipmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:LeasesRightofuseAssetsAndLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "031 - Disclosure - Note 10 - Leases (Tables)", "menuCat": "Tables", "order": "32", "role": "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables", "shortName": "Note 10 - Leases (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "ufpt:LeasesRightofuseAssetsAndLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "032 - Disclosure - Note 11 - Income Per Share (Tables)", "menuCat": "Tables", "order": "33", "role": "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables", "shortName": "Note 11 - Income Per Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "033 - Disclosure - Note 12 - Segment Reporting (Tables)", "menuCat": "Tables", "order": "34", "role": "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables", "shortName": "Note 12 - Segment Reporting (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "034 - Disclosure - Note 13 - Goodwill and Other Intangible Assets (Tables)", "menuCat": "Tables", "order": "35", "role": "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables", "shortName": "Note 13 - Goodwill and Other Intangible Assets (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "us-gaap:OtherLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherNoncurrentLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "035 - Disclosure - Note 14 - Other Long-term Liabilities (Tables)", "menuCat": "Tables", "order": "36", "role": "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables", "shortName": "Note 14 - Other Long-term Liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:OtherLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OtherNoncurrentLiabilitiesTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "036 - Disclosure - Note 16 - Indebtedness (Tables)", "menuCat": "Tables", "order": "37", "role": "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables", "shortName": "Note 16 - Indebtedness (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "037 - Disclosure - Note 2 - Acquisitions and Divestiture (Details Textual)", "menuCat": "Details", "order": "38", "role": "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "shortName": "Note 2 - Acquisitions and Divestiture (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2022-04-01_2022-06-30_BusinessAcquisitionAxis-DasMedicalMember", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationAcquisitionRelatedCosts", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "038 - Disclosure - Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details)", "menuCat": "Details", "order": "39", "role": "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "shortName": "Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2022-03-17_2022-03-17_BusinessAcquisitionAxis-AdvantMedicalMember", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationConsiderationTransferredOther1", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "003 - Statement - Condensed Consolidated Statements of Income (Unaudited)", "menuCat": "Statements", "order": "4", "role": "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "shortName": "Condensed Consolidated Statements of Income (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "lang": null, "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2022-01-01_2022-06-30_BusinessAcquisitionAxis-AdvantMedicalMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "039 - Disclosure - Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details)", "menuCat": "Details", "order": "40", "role": "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "shortName": "Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2022-01-01_2022-06-30_BusinessAcquisitionAxis-AdvantMedicalMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_FairValueByAssetClassAxis-DeferredRevenueMember", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "040 - Disclosure - Note 3 - Revenue Recognition (Details Textual)", "menuCat": "Details", "order": "41", "role": "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual", "shortName": "Note 3 - Revenue Recognition (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_FairValueByAssetClassAxis-DeferredRevenueMember", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "041 - Disclosure - Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details)", "menuCat": "Details", "order": "42", "role": "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details", "shortName": "Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_ProductOrServiceAxis-ProductMember", "decimals": "-4", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "042 - Disclosure - Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details)", "menuCat": "Details", "order": "43", "role": "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details", "shortName": "Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:ContractWithCustomerLiability", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InterestPaidNet", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "043 - Disclosure - Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details)", "menuCat": "Details", "order": "44", "role": "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details", "shortName": "Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "us-gaap:CashFlowSupplementalDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InterestPaidNet", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AccountsReceivableGrossCurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "044 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details)", "menuCat": "Details", "order": "45", "role": "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details", "shortName": "Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AccountsReceivableGrossCurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "045 - Disclosure - Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details)", "menuCat": "Details", "order": "46", "role": "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details", "shortName": "Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:PaymentForContingentConsiderationLiabilityFinancingActivities", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "046 - Disclosure - Note 6 - Fair Value of Financial Instruments (Details Textual)", "menuCat": "Details", "order": "47", "role": "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "shortName": "Note 6 - Fair Value of Financial Instruments (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2022-12-31_2022-12-31_BusinessAcquisitionAxis-ContechMedicalIncAndDasMedicalMember", "decimals": "-7", "lang": null, "name": "us-gaap:BusinessCombinationConsiderationTransferredLiabilitiesIncurred", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "p", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-5", "first": true, "lang": null, "name": "ufpt:PresentValueOfNoncompetitionAgreement", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "047 - Disclosure - Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details)", "menuCat": "Details", "order": "48", "role": "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details", "shortName": "Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30_FairValueByFairValueHierarchyLevelAxis-FairValueInputsLevel3Member_FairValueByMeasurementFrequencyAxis-FairValueMeasurementsRecurringMember", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationContingentConsiderationLiability", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "048 - Disclosure - Note 7 - Share-based Compensation (Details Textual)", "menuCat": "Details", "order": "49", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "shortName": "Note 7 - Share-based Compensation (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2021-12-31_StatementEquityComponentsAxis-CommonStockOutstandingMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unitRef": "Share", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "004 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited)", "menuCat": "Statements", "order": "5", "role": "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2022-01-01_2022-03-31_StatementEquityComponentsAxis-CommonStockOutstandingMember", "decimals": "-3", "lang": null, "name": "us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "ufpt:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsByAwardTypeTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "049 - Disclosure - Note 7 - Share-based Compensation - Compensation Cost (Details)", "menuCat": "Details", "order": "50", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "shortName": "Note 7 - Share-based Compensation - Compensation Cost (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "ufpt:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsByAwardTypeTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_IncomeStatementLocationAxis-SellingGeneralAndAdministrativeExpensesMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31_AwardTypeAxis-EmployeeAndNonemployeeStockOptionMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "reportCount": 1, "unitRef": "Share", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "050 - Disclosure - Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details)", "menuCat": "Details", "order": "51", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details", "shortName": "Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30_AwardTypeAxis-EmployeeAndNonemployeeStockOptionMember", "decimals": "INF", "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R52": { "firstAnchor": null, "groupType": "disclosure", "isDefault": "false", "longName": "051 - Disclosure - Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details)", "menuCat": "Details", "order": "52", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details", "shortName": "Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R53": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31_AwardTypeAxis-RestrictedStockUnitsRSUMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "052 - Disclosure - Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details)", "menuCat": "Details", "order": "53", "role": "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "shortName": "Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31_AwardTypeAxis-RestrictedStockUnitsRSUMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "053 - Disclosure - Note 8 - Inventories - Summary of Inventory (Details)", "menuCat": "Details", "order": "54", "role": "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details", "shortName": "Note 8 - Inventories - Summary of Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "054 - Disclosure - Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details)", "menuCat": "Details", "order": "55", "role": "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details", "shortName": "Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:PropertyPlantAndEquipmentTextBlock", "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:PropertyPlantAndEquipmentGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "ufpt:OperatingAndFinanceLeasesRightofuseAssets", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "055 - Disclosure - Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details)", "menuCat": "Details", "order": "56", "role": "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details", "shortName": "Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "ufpt:LeasesRightofuseAssetsAndLiabilitiesTableTextBlock", "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30_BalanceSheetLocationAxis-RightOfUseAssetsMember", "decimals": "-3", "lang": null, "name": "us-gaap:OperatingLeaseRightOfUseAsset", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LeaseCostTableTextBlock", "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-4", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "056 - Disclosure - Note 10 - Leases - Lease Cost (Details)", "menuCat": "Details", "order": "57", "role": "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details", "shortName": "Note 10 - Leases - Lease Cost (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:LeaseCostTableTextBlock", "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-4", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "ufpt:LesseeOperatingAndFinanceLeasesLiabilityMaturityTableTextBlock", "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "057 - Disclosure - Note 10 - Leases - Aggregate Future Lease Payments (Details)", "menuCat": "Details", "order": "58", "role": "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details", "shortName": "Note 10 - Leases - Aggregate Future Lease Payments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "ufpt:LesseeOperatingAndFinanceLeasesLiabilityMaturityTableTextBlock", "ufpt:LesseeOperatingAndFinanceLeasesTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "058 - Disclosure - Note 11 - Income Per Share (Details Textual)", "menuCat": "Details", "order": "59", "role": "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual", "shortName": "Note 11 - Income Per Share (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "005 - Statement - Condensed Consolidated Statements of Cash Flows", "menuCat": "Statements", "order": "6", "role": "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "shortName": "Condensed Consolidated Statements of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-3", "lang": null, "name": "us-gaap:DepreciationDepletionAndAmortization", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "reportCount": 1, "unitRef": "Share", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "059 - Disclosure - Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details)", "menuCat": "Details", "order": "60", "role": "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details", "shortName": "Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "lang": null, "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "p", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember", "decimals": "INF", "first": true, "lang": null, "name": "ufpt:NumberOfMajorCustomers", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "060 - Disclosure - Note 12 - Segment Reporting (Details Textual)", "menuCat": "Details", "order": "61", "role": "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "shortName": "Note 12 - Segment Reporting (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "p", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember", "decimals": "INF", "first": true, "lang": null, "name": "ufpt:NumberOfMajorCustomers", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "061 - Disclosure - Note 12 - Segment Reporting - Net Sales by Market (Details)", "menuCat": "Details", "order": "62", "role": "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details", "shortName": "Note 12 - Segment Reporting - Net Sales by Market (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "0", "lang": null, "name": "ufpt:RevenueFromContractWithCustomerIncludingAssessedTaxPercentage", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:AmortizationOfIntangibleAssets", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "062 - Disclosure - Note 13 - Goodwill and Other Intangible Assets (Details Textual)", "menuCat": "Details", "order": "63", "role": "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual", "shortName": "Note 13 - Goodwill and Other Intangible Assets (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:AmortizationOfIntangibleAssets", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2022-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "063 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details)", "menuCat": "Details", "order": "64", "role": "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "shortName": "Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfGoodwillTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": "-4", "lang": null, "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R65": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-4", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "064 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details)", "menuCat": "Details", "order": "65", "role": "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "shortName": "Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-4", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R66": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "065 - Disclosure - Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details)", "menuCat": "Details", "order": "66", "role": "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details", "shortName": "Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "us-gaap:IntangibleAssetsDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R67": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:OtherNoncurrentLiabilitiesTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "066 - Disclosure - Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details)", "menuCat": "Details", "order": "67", "role": "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details", "shortName": "Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:OtherNoncurrentLiabilitiesTableTextBlock", "us-gaap:OtherLiabilitiesDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessCombinationContingentConsiderationLiabilityNoncurrent", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R68": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "067 - Disclosure - Note 15 - Income Tax (Details Textual)", "menuCat": "Details", "order": "68", "role": "http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual", "shortName": "Note 15 - Income Tax (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-04-01_2023-06-30", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R69": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:LongTermDebt", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "068 - Disclosure - Note 16 - Indebtedness (Details Textual)", "menuCat": "Details", "order": "69", "role": "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "shortName": "Note 16 - Indebtedness (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2021-12-22_DebtInstrumentAxis-SecondAmendedAndRestatedCreditAgreementMember_LineOfCreditFacilityAxis-SubsidiaryGuarantorsMember", "decimals": "-7", "lang": null, "name": "us-gaap:DebtInstrumentFaceAmount", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "006 - Disclosure - Note 1 - Basis of Presentation", "menuCat": "Notes", "order": "7", "role": "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation", "shortName": "Note 1 - Basis of Presentation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R70": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:LongTermDebt", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "069 - Disclosure - Note 16 - Indebtedness - Long-term Debt (Details)", "menuCat": "Details", "order": "70", "role": "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "shortName": "Note 16 - Indebtedness - Long-term Debt (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R71": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "070 - Disclosure - Note 16 - Indebtedness - Schedule of Maturity (Details)", "menuCat": "Details", "order": "71", "role": "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details", "shortName": "Note 16 - Indebtedness - Schedule of Maturity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "us-gaap:DebtDisclosureTextBlock", "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "i_2023-06-30", "decimals": "-6", "first": true, "lang": null, "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "007 - Disclosure - Note 2 - Acquisitions and Divestiture", "menuCat": "Notes", "order": "8", "role": "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "shortName": "Note 2 - Acquisitions and Divestiture", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "008 - Disclosure - Note 3 - Revenue Recognition", "menuCat": "Notes", "order": "9", "role": "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "shortName": "Note 3 - Revenue Recognition", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "ufpt20230630_10q.htm", "contextRef": "d_2023-01-01_2023-06-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 61, "tag": { "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "gMonthDayItemType" }, "dei_DocumentFiscalPeriodFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.", "label": "Document Fiscal Period Focus" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.", "label": "Document Fiscal Year Focus" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "gYearItemType" }, "dei_DocumentInformationLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Document Information [Line Items]" } } }, "localname": "DocumentInformationLineItems", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "stringItemType" }, "dei_DocumentInformationTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package.", "label": "Document Information [Table]" } } }, "localname": "DocumentInformationTable", "nsuri": "http://xbrl.sec.gov/dei/2023", "xbrltype": "stringItemType" }, "dei_DocumentPeriodEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.", "label": "Document Period End Date" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r626" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r627" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "yesNoItemType" }, "dei_EntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "Entity [Domain]" } } }, "localname": "EntityDomain", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-document-and-entity-information", "http://www.ufpt.com/20230630/role/statement-item-5-other-information-", "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation", "http://www.ufpt.com/20230630/role/statement-note-10-leases", "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables", "http://www.ufpt.com/20230630/role/statement-note-8-inventories", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables" ], "xbrltype": "domainItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r628" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r624" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "employerIdItemType" }, "dei_LegalEntityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The set of legal entities associated with a report.", "label": "Legal Entity [Axis]" } } }, "localname": "LegalEntityAxis", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-document-and-entity-information", "http://www.ufpt.com/20230630/role/statement-item-5-other-information-", "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation", "http://www.ufpt.com/20230630/role/statement-note-10-leases", "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables", "http://www.ufpt.com/20230630/role/statement-note-8-inventories", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables" ], "xbrltype": "stringItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r623" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r625" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-document-and-entity-information" ], "xbrltype": "tradingSymbolItemType" }, "srt_DirectorMember": { "auth_ref": [ "r651", "r695" ], "lang": { "en-us": { "role": { "label": "Director [Member]" } } }, "localname": "DirectorMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r265", "r600", "r674", "r692", "r693" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "stringItemType" }, "srt_MaximumMember": { "auth_ref": [ "r290", "r291", "r292", "r293", "r355", "r467", "r499", "r516", "r517", "r568", "r569", "r570", "r571", "r572", "r575", "r576", "r588", "r597", "r606", "r611", "r672", "r684", "r685", "r686", "r687", "r688", "r689" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r290", "r291", "r292", "r293", "r355", "r467", "r499", "r516", "r517", "r568", "r569", "r570", "r571", "r572", "r575", "r576", "r588", "r597", "r606", "r611", "r672", "r684", "r685", "r686", "r687", "r688", "r689" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r265", "r600", "r674", "r692", "r693" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r262", "r469", "r493", "r494", "r495", "r496", "r497", "r498", "r577", "r599", "r610", "r635", "r668", "r669", "r674", "r692" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r262", "r469", "r493", "r494", "r495", "r496", "r497", "r498", "r577", "r599", "r610", "r635", "r668", "r669", "r674", "r692" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r290", "r291", "r292", "r293", "r348", "r355", "r382", "r383", "r384", "r466", "r467", "r499", "r516", "r517", "r568", "r569", "r570", "r571", "r572", "r575", "r576", "r588", "r597", "r606", "r611", "r614", "r667", "r672", "r685", "r686", "r687", "r688", "r689" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r290", "r291", "r292", "r293", "r348", "r355", "r382", "r383", "r384", "r466", "r467", "r499", "r516", "r517", "r568", "r569", "r570", "r571", "r572", "r575", "r576", "r588", "r597", "r606", "r611", "r614", "r667", "r672", "r685", "r686", "r687", "r688", "r689" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "domainItemType" }, "srt_ScenarioUnspecifiedDomain": { "auth_ref": [ "r223", "r356", "r629", "r648" ], "lang": { "en-us": { "role": { "label": "Scenario [Domain]" } } }, "localname": "ScenarioUnspecifiedDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "domainItemType" }, "srt_StatementScenarioAxis": { "auth_ref": [ "r223", "r356", "r629", "r630", "r648" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "localname": "StatementScenarioAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r651", "r681" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "srt_WeightedAverageMember": { "auth_ref": [ "r575", "r576", "r684", "r686", "r689" ], "lang": { "en-us": { "role": { "label": "Weighted Average [Member]" } } }, "localname": "WeightedAverageMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "domainItemType" }, "ufpt_AdvantMedicalMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information related to Advant Medicaal, Inc..", "label": "Advant Medical [Member]" } } }, "localname": "AdvantMedicalMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "domainItemType" }, "ufpt_AerospaceDefenseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the Aerospace & Defense group of major customers.", "label": "Aerospace & Defense [Member]" } } }, "localname": "AerospaceDefenseMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "domainItemType" }, "ufpt_AutomotiveMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the Automotive group of major customers.", "label": "Automotive [Member]" } } }, "localname": "AutomotiveMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "domainItemType" }, "ufpt_BloombergShorttermBankYieldIndexRateMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Bloomberg Short-term Bank Yield Index Rate.", "label": "Bloomberg Short-term Bank Yield Index Rate [Member]" } } }, "localname": "BloombergShorttermBankYieldIndexRateMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_BusinessCombinationAgreementTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents agreement term for business combination.", "label": "ufpt_BusinessCombinationAgreementTerm", "terseLabel": "Business Combination, Agreement Term (Year)" } } }, "localname": "BusinessCombinationAgreementTerm", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "durationItemType" }, "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets acquired, including goodwill at the acquisition date.", "label": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "totalLabel": "Total identifiable assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accrued liabilities due within one year or within the normal operating cycle, if longer, assumed at the acquisition date.", "label": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities", "negatedLabel": "Accrued expenses" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredTaxes": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred taxes assumed at the acquisition date.", "label": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredTaxes", "negatedLabel": "Deferred taxes" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesDeferredTaxes", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesIncomeTax": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities incurred for income taxes assumed at the acquisition date.", "label": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesIncomeTax", "negatedTerseLabel": "Income taxes" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesIncomeTax", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseRightofuseAssets": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 5.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lease right-of-use assets expected to be realized or consumed after one year or the normal operating cycle, if longer, acquired at the acquisition date.", "label": "Lease right of use assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLeaseRightofuseAssets", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "ufpt_CommonStockOutstandingMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents common stock outstanding.", "label": "Common Stock Outstanding [Member]" } } }, "localname": "CommonStockOutstandingMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "ufpt_ContechMedicalIncAndDasMedicalMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Contech Medical, Inc and DAS Medical.", "label": "Contech Medical, Inc and DAS Medical [Member]" } } }, "localname": "ContechMedicalIncAndDasMedicalMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_ContechMedicalIncMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Contech Medical, Inc.", "label": "Contech Medical, Inc [Member]" } } }, "localname": "ContechMedicalIncMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_ContractWithCustomerAssetIncreaseDecreaseForUnbilledRevenueRecognized": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, from unbilled revenue recognized.", "label": "Increases due to revenue recognized, not invoiced to customers" } } }, "localname": "ContractWithCustomerAssetIncreaseDecreaseForUnbilledRevenueRecognized", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_ContractWithCustomerLiabilityIncreaseDueToConsiderationReceivedFromCustomers": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in obligation to transfer good or service to customer for which consideration from customer has been received.", "label": "Increases due to consideration received from customers" } } }, "localname": "ContractWithCustomerLiabilityIncreaseDueToConsiderationReceivedFromCustomers", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_ContractWithCustomerLiabilityRevenueRecognizedDuringPeriod": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized during period including amounts previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.)", "label": "ufpt_ContractWithCustomerLiabilityRevenueRecognizedDuringPeriod", "negatedLabel": "Revenue recognized" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognizedDuringPeriod", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_CustomerContractsAndRelationshipsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents customer contracts and relationships.", "label": "Customer Contracts and Relationships [Member]" } } }, "localname": "CustomerContractsAndRelationshipsMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "domainItemType" }, "ufpt_DasMedicalMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents DAS Medical.", "label": "DAS Medical [Member]" } } }, "localname": "DasMedicalMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_DeferredRevenueMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable.", "label": "Deferred Revenue [Member]" } } }, "localname": "DeferredRevenueMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of consideration for disposal group including discontinued operation held in escrow.", "label": "ufpt_DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow", "terseLabel": "Disposal Group, Including Discontinued Operation, Consideration, Held in Escrow" } } }, "localname": "DisposalGroupIncludingDiscontinuedOperationConsiderationHeldInEscrow", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "ufpt_EmployeeAndNonemployeeStockOptionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract that gives the holder the right, but not the obligation, either to purchase or to sell a certain number of shares of stock at a predetermined price for a specified period of time.", "label": "Employee and Nonemployee Stock Option [Member]" } } }, "localname": "EmployeeAndNonemployeeStockOptionMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "domainItemType" }, "ufpt_EngineeringAndDevelopmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the information pertaining to engineering and development.", "label": "Engineering and Development [Member]" } } }, "localname": "EngineeringAndDevelopmentMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details" ], "xbrltype": "domainItemType" }, "ufpt_FinanceLeaseLiabilityToBePaidAfterYearFour": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 5.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid 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).", "label": "ufpt_FinanceLeaseLiabilityToBePaidAfterYearFour", "terseLabel": "Thereafter, finance" } } }, "localname": "FinanceLeaseLiabilityToBePaidAfterYearFour", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "ufpt_FurnitureFixturesAndComputersMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Equipment commonly used in offices and stores that have no permanent connection to the structure of a building or utilities and long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems.", "label": "Furniture, Fixtures, and Computers [Member]" } } }, "localname": "FurnitureFixturesAndComputersMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "ufpt_IncreaseInOperatingLeaseLiability": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase or decrease in operating lease liability.", "label": "Operating lease liabilities" } } }, "localname": "IncreaseInOperatingLeaseLiability", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "monetaryItemType" }, "ufpt_IndustrialOrOtherMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents industrial or other.", "label": "industrial or Other [Member]" } } }, "localname": "IndustrialOrOtherMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "domainItemType" }, "ufpt_IntellectualPropertyTradenameAndBrandMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents intellectual property/tradename and brand.", "label": "Intellectual Property/ Tradename and Brand [Member]" } } }, "localname": "IntellectualPropertyTradenameAndBrandMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "domainItemType" }, "ufpt_IssuerRule10b51MaterialTermsTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for material terms under issuer rule 10b5-1.", "label": "Issuer Rule 10b5-1, Material Terms [Text Block]" } } }, "localname": "IssuerRule10b51MaterialTermsTextBlock", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-item-5-other-information-" ], "xbrltype": "textBlockItemType" }, "ufpt_LeaseLiabilitiesCurrentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing current lease liabilities.", "label": "Lease Liabilities, Current [Member]" } } }, "localname": "LeaseLiabilitiesCurrentMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "domainItemType" }, "ufpt_LeaseLiabilitiesNoncurrentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing lease liabilities, noncurrent.", "label": "Lease Liabilities, Noncurrent [Member]" } } }, "localname": "LeaseLiabilitiesNoncurrentMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "domainItemType" }, "ufpt_LeasesRightofuseAssetsAndLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the assets and liabilities of operating and finance leases.", "label": "Leases, Right-of-Use Assets and Liabilities [Table Text block]" } } }, "localname": "LeasesRightofuseAssetsAndLiabilitiesTableTextBlock", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables" ], "xbrltype": "textBlockItemType" }, "ufpt_LesseeOperatingAndFinanceLeasesLiabilityMaturityTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating and finance lease liabilities. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating and finance lease liabilities recognized in statement of financial position.", "label": "Lessee, Operating and Finance Leases, Liability, Maturity [Table Text Block]" } } }, "localname": "LesseeOperatingAndFinanceLeasesLiabilityMaturityTableTextBlock", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables" ], "xbrltype": "textBlockItemType" }, "ufpt_LesseeOperatingAndFinanceLeasesTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for operating and finance leases of lessee. Includes, but is not limited to, description of operating and finance leases and maturity analysis of operating and finance lease liabilities.", "label": "Lessee, Operating and Finance Leases [Text Block]" } } }, "localname": "LesseeOperatingAndFinanceLeasesTextBlock", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases" ], "xbrltype": "textBlockItemType" }, "ufpt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 5.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease 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).", "label": "ufpt_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "terseLabel": "Thereafter, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "ufpt_LonglivedAssetsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents long-lived assets.", "label": "Long-Lived Assets [Member]" } } }, "localname": "LonglivedAssetsMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_MedicalMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information pertaining to the Medical group of major customers.", "label": "Medical [Member]" } } }, "localname": "MedicalMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "domainItemType" }, "ufpt_MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents molded fiber business (\u201cMFT\u201d) and related real estate in Iowa.", "label": "molded fiber business (\u201cMFT\u201d) and related real estate in Iowa [Member]" } } }, "localname": "MoldedFiberBusinessMFTAndRelatedRealEstateInIowaMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_NoncompetitionAgreementPaymentLiabilityNoncurrent": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details": { "order": 1.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation incurred for non-competition agreement payment, classified as noncurrent.", "label": "ufpt_NoncompetitionAgreementPaymentLiabilityNoncurrent", "terseLabel": "Present value of non-competition payments" } } }, "localname": "NoncompetitionAgreementPaymentLiabilityNoncurrent", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_NoncompetitionAgreementsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents non-competition agreement.", "label": "Non-Competition Agreements [Member]" } } }, "localname": "NoncompetitionAgreementsMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_NoteToFinancialStatementDetailsTextual": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note To Financial Statement Details Textual" } } }, "localname": "NoteToFinancialStatementDetailsTextual", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_NotesToFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Notes To Financial Statements [Abstract]" } } }, "localname": "NotesToFinancialStatementsAbstract", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_NumberOfMajorCustomers": { "auth_ref": [], "lang": { "en-us": { "role": { "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.", "label": "ufpt_NumberOfMajorCustomers", "terseLabel": "Number of Major Customers" } } }, "localname": "NumberOfMajorCustomers", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "integerItemType" }, "ufpt_OneCustomerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "information pertaining to one customer.", "label": "One Customer [Member]" } } }, "localname": "OneCustomerMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_OperatingAndFinanceLeasesLiabilityCurrent": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating and finance leases, classified as current.", "label": "Lease liabilities", "totalLabel": "Total lease liabilities, current" } } }, "localname": "OperatingAndFinanceLeasesLiabilityCurrent", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_OperatingAndFinanceLeasesLiabilityNoncurrent": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating and finance leases, classified as noncurrent.", "label": "ufpt_OperatingAndFinanceLeasesLiabilityNoncurrent", "terseLabel": "Lease liabilities", "totalLabel": "Total lease liabilities, long-term" } } }, "localname": "OperatingAndFinanceLeasesLiabilityNoncurrent", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_OperatingAndFinanceLeasesRightofuseAssets": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Represents the amount of of right-of-use asset from assets under operating and finance leases.", "label": "Right of use assets", "totalLabel": "Total ROU assets" } } }, "localname": "OperatingAndFinanceLeasesRightofuseAssets", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_OtherLiabilitiesNoncurrentOther": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details": { "order": 2.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of other noncurrent liabilities, classified as other.", "label": "ufpt_OtherLiabilitiesNoncurrentOther", "verboseLabel": "Other" } } }, "localname": "OtherLiabilitiesNoncurrentOther", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details" ], "xbrltype": "monetaryItemType" }, "ufpt_PresentValueOfNoncompetitionAgreement": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of non-competition agreement.", "label": "ufpt_PresentValueOfNoncompetitionAgreement", "terseLabel": "Present Value of Non-competition Agreement", "verboseLabel": "Present value of non-competition payments" } } }, "localname": "PresentValueOfNoncompetitionAgreement", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "monetaryItemType" }, "ufpt_PresidentAndChiefExecutiveOfficerMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents President and Chief Executive Officer .", "label": "President and Chief Executive Officer [Member]" } } }, "localname": "PresidentAndChiefExecutiveOfficerMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_RevenueFromContractWithCustomerIncludingAssessedTaxPercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The percentage of revenue, including tax collected from customer, from satisfaction of performance obligation by transferring promised good or service to customer.", "label": "Percentage of concentration risk" } } }, "localname": "RevenueFromContractWithCustomerIncludingAssessedTaxPercentage", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details" ], "xbrltype": "percentItemType" }, "ufpt_RightOfUseAssetsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing operating and finance leases, right of use assets.", "label": "Right of Use Assets [Member]" } } }, "localname": "RightOfUseAssetsMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "domainItemType" }, "ufpt_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsByAwardTypeTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the allocation of equity-based compensation costs to a given line item on the balance sheet and income statement for the period. This may include the reporting line for the costs and the amount capitalized and expensed. The amounts are aggregated by award type.", "label": "Schedule of Employee Service Share Based Compensation Allocation of Recognized Period Costs, By Award Type [Table Text Block]" } } }, "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsByAwardTypeTableTextBlock", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables" ], "xbrltype": "textBlockItemType" }, "ufpt_SecondAmendedAndRestatedCreditAgreementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents second amended and restated credit agreement.", "label": "Second Amended and Restated Credit Agreement [Member]" } } }, "localname": "SecondAmendedAndRestatedCreditAgreementMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_SecuredRevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents secured revolving credit facility.", "label": "Secured Revolving Credit Facility [Member]" } } }, "localname": "SecuredRevolvingCreditFacilityMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_SecuredTermLoanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents secured term loan.", "label": "Secured Term Loan [Member]" } } }, "localname": "SecuredTermLoanMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "For net-share settlement of share-based awards when the employer settles employees' income tax withholding obligations, this element represents the market price per share of shares used by the employees to repay the employer.", "label": "ufpt_SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice", "terseLabel": "Shares Paid for Tax Withholding for Share Based Compensation Market Price (in dollars per share)" } } }, "localname": "SharesPaidForTaxWithholdingForShareBasedCompensationMarketPrice", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "perShareItemType" }, "ufpt_SubsidiaryGuarantorsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Related to the subsidiary guarantors granting the credit agreement to the company.", "label": "Subsidiary Guarantors [Member]" } } }, "localname": "SubsidiaryGuarantorsMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_TermLoanMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information relating to term loans.", "label": "Term Loan [Member]" } } }, "localname": "TermLoanMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "domainItemType" }, "ufpt_ToolingAndMachineryMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information pertaining to tooling and machinery.", "label": "Tooling and Machinery [Member]" } } }, "localname": "ToolingAndMachineryMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details" ], "xbrltype": "domainItemType" }, "ufpt_TwoCustomersMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents two customers.", "label": "Two Customers [Member]" } } }, "localname": "TwoCustomersMember", "nsuri": "http://www.ufpt.com/20230630", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "ufpt_statement-statement-note-10-leases-aggregate-future-lease-payments-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 10 - Leases - Aggregate Future Lease Payments (Details)" } } }, "localname": "statement-statement-note-10-leases-aggregate-future-lease-payments-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-10-leases-lease-cost-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 10 - Leases - Lease Cost (Details)" } } }, "localname": "statement-statement-note-10-leases-lease-cost-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 10 - Leases - Right-of-Use Assets and Lease Liabilities (Details)" } } }, "localname": "statement-statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-10-leases-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 10 - Leases" } } }, "localname": "statement-statement-note-10-leases-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-11-income-per-share-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 11 - Income Per Share" } } }, "localname": "statement-statement-note-11-income-per-share-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 11 - Income Per Share - Weighted Average Number of Shares Used to Compute Net EPS (Details)" } } }, "localname": "statement-statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-12-segment-reporting-net-sales-by-market-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 12 - Segment Reporting - Net Sales by Market (Details)" } } }, "localname": "statement-statement-note-12-segment-reporting-net-sales-by-market-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-12-segment-reporting-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 12 - Segment Reporting" } } }, "localname": "statement-statement-note-12-segment-reporting-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Goodwill and Other Intangible Assets - Changes in Carrying Amount of Goodwill (Details)" } } }, "localname": "statement-statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Goodwill and Other Intangible Assets - Definite-lived Intangible Assets (Details)" } } }, "localname": "statement-statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Goodwill and Other Intangible Assets - Future Amortization of Intangible Assets (Details)" } } }, "localname": "statement-statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-13-goodwill-and-other-intangible-assets-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Goodwill and Other Intangible Assets" } } }, "localname": "statement-statement-note-13-goodwill-and-other-intangible-assets-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 14 - Other Long-term Liabilities - Other Long-term Liabilities (Details)" } } }, "localname": "statement-statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-14-other-longterm-liabilities-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 14 - Other Long-term Liabilities" } } }, "localname": "statement-statement-note-14-other-longterm-liabilities-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-16-indebtedness-longterm-debt-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 16 - Indebtedness - Long-term Debt (Details)" } } }, "localname": "statement-statement-note-16-indebtedness-longterm-debt-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-16-indebtedness-schedule-of-maturity-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 16 - Indebtedness - Schedule of Maturity (Details)" } } }, "localname": "statement-statement-note-16-indebtedness-schedule-of-maturity-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-16-indebtedness-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 16 - Indebtedness" } } }, "localname": "statement-statement-note-16-indebtedness-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-2-acquisition-pro-forma-information-unaudited-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Acquisition - Pro Forma Information (Unaudited) (Details)" } } }, "localname": "statement-statement-note-2-acquisition-pro-forma-information-unaudited-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-2-acquisitions-and-divestiture-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Acquisitions and Divestiture" } } }, "localname": "statement-statement-note-2-acquisitions-and-divestiture-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Acquisitions - Assets Acquires and Liabilities Assumed (Details)" } } }, "localname": "statement-statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-3-revenue-recognition-contract-assets-and-liabilities-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 3 - Revenue Recognition - Contract Assets and Liabilities (Details)" } } }, "localname": "statement-statement-note-3-revenue-recognition-contract-assets-and-liabilities-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 3 - Revenue Recognition - Revenue Disaggregated by the Major Types of Goods and Services Sold (Details)" } } }, "localname": "statement-statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-3-revenue-recognition-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 3 - Revenue Recognition" } } }, "localname": "statement-statement-note-3-revenue-recognition-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 4 - Supplemental Cash Flow Information - Schedule of Supplemental Cash Flow Information (Details)" } } }, "localname": "statement-statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-4-supplemental-cash-flow-information-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 4 - Supplemental Cash Flow Information" } } }, "localname": "statement-statement-note-4-supplemental-cash-flow-information-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 5 - Receivables and Allowance for Credit Losses - Receivables (Details)" } } }, "localname": "statement-statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 5 - Receivables and Allowance for Credit Losses - Summary of Allowance for Doubtful Accounts (Details)" } } }, "localname": "statement-statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-5-receivables-and-allowance-for-credit-losses-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 5 - Receivables and Allowance for Credit Losses" } } }, "localname": "statement-statement-note-5-receivables-and-allowance-for-credit-losses-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 6 - Fair Value of Financial Instruments - Financial Assets Measured at Fair Value on a Recurring Basis (Details)" } } }, "localname": "statement-statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-6-fair-value-of-financial-instruments-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 6 - Fair Value of Financial Instruments" } } }, "localname": "statement-statement-note-6-fair-value-of-financial-instruments-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Share-based Compensation - Black-Scholes Option Pricing Model (Details)" } } }, "localname": "statement-statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-7-sharebased-compensation-compensation-cost-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Share-based Compensation - Compensation Cost (Details)" } } }, "localname": "statement-statement-note-7-sharebased-compensation-compensation-cost-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Share-based Compensation - Restricted Stock Unit Activity (Details)" } } }, "localname": "statement-statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Share-based Compensation - Summary of Stock Option Activity (Details)" } } }, "localname": "statement-statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-7-sharebased-compensation-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Share-based Compensation" } } }, "localname": "statement-statement-note-7-sharebased-compensation-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-8-inventories-summary-of-inventory-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 8 - Inventories - Summary of Inventory (Details)" } } }, "localname": "statement-statement-note-8-inventories-summary-of-inventory-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-8-inventories-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 8 - Inventories" } } }, "localname": "statement-statement-note-8-inventories-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 9 - Property, Plant and Equipment - Property, Plant, and Equipment (Details)" } } }, "localname": "statement-statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "ufpt_statement-statement-note-9-property-plant-and-equipment-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 9 - Property, Plant and Equipment" } } }, "localname": "statement-statement-note-9-property-plant-and-equipment-tables", "nsuri": "http://www.ufpt.com/20230630", "xbrltype": "stringItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r28", "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "auth_ref": [ "r653" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]" } } }, "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccountsReceivableGrossCurrent": { "auth_ref": [ "r182", "r266", "r267", "r580" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details": { "order": 0.0, "parentTag": "us-gaap_ReceivablesNetCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Accounts receivable\u2013trade" } } }, "localname": "AccountsReceivableGrossCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableMember": { "auth_ref": [ "r574" ], "lang": { "en-us": { "role": { "documentation": "Due from customers or clients for goods or services that have been delivered or sold.", "label": "Accounts Receivable [Member]" } } }, "localname": "AccountsReceivableMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsReceivableNetCurrent": { "auth_ref": [ "r266", "r267" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.", "label": "Receivables, net" } } }, "localname": "AccountsReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedIncomeTaxesCurrent": { "auth_ref": [ "r96", "r138" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.", "label": "us-gaap_AccruedIncomeTaxesCurrent", "terseLabel": "Income taxes payable" } } }, "localname": "AccruedIncomeTaxesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r31" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued expenses" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r63", "r175", "r486" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details": { "order": 1.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "negatedLabel": "Accumulated depreciation and amortization" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r41", "r42", "r107", "r183", "r483", "r504", "r505" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.", "label": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r7", "r19", "r42", "r424", "r427", "r462", "r500", "r501", "r637", "r638", "r639", "r645", "r646", "r647" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r99", "r609", "r696" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Additional paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r391", "r392", "r393", "r514", "r645", "r646", "r647", "r676", "r698" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for restricted stock unit under share-based payment arrangement.", "label": "Net share settlement of RSUs", "negatedLabel": "Net share settlement of RSUs" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationRestrictedStockUnitsRequisiteServicePeriodRecognition", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for option under share-based payment arrangement.", "label": "Exercise of stock options net of shares presented for exercise" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalShareBasedCompensationStockOptionsRequisiteServicePeriodRecognition", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash provided by operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r386", "r394" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "us-gaap_AllocatedShareBasedCompensationExpense", "verboseLabel": "Share-based compensation" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "auth_ref": [ "r184", "r268", "r272", "r273", "r277", "r691" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable.", "label": "us-gaap_AllowanceForDoubtfulAccountsReceivable", "periodEndLabel": "Allowance - end of period", "periodStartLabel": "Allowance - beginning of period" } } }, "localname": "AllowanceForDoubtfulAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "auth_ref": [ "r184", "r268", "r272" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details": { "order": 1.0, "parentTag": "us-gaap_ReceivablesNetCurrent", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.", "label": "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent", "negatedLabel": "Less allowance for credit losses" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": { "auth_ref": [ "r276" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery.", "label": "Recoveries" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "auth_ref": [ "r275" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.", "label": "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs", "negatedLabel": "Amounts written off against the allowance" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r13", "r58", "r62" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_AmortizationOfIntangibleAssets", "terseLabel": "Amortization of Intangible Assets" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r235" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual" ], "xbrltype": "sharesItemType" }, "us-gaap_ArrangementsAndNonarrangementTransactionsMember": { "auth_ref": [ "r417" ], "lang": { "en-us": { "role": { "documentation": "Collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Domain]" } } }, "localname": "ArrangementsAndNonarrangementTransactionsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_Assets": { "auth_ref": [ "r136", "r179", "r207", "r244", "r253", "r258", "r269", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r418", "r421", "r438", "r478", "r538", "r609", "r622", "r670", "r671", "r682" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "us-gaap_Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r171", "r187", "r207", "r269", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r418", "r421", "r438", "r609", "r670", "r671", "r682" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 7.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "us-gaap_AssetsCurrent", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by location on balance sheet (statement of financial position).", "label": "Balance Sheet Location [Axis]" } } }, "localname": "BalanceSheetLocationAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "stringItemType" }, "us-gaap_BalanceSheetLocationDomain": { "auth_ref": [ "r81", "r82" ], "lang": { "en-us": { "role": { "documentation": "Location in the balance sheet (statement of financial position).", "label": "Balance Sheet Location [Domain]" } } }, "localname": "BalanceSheetLocationDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "domainItemType" }, "us-gaap_BuildingAndBuildingImprovementsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing.", "label": "Building and Building Improvements [Member]" } } }, "localname": "BuildingAndBuildingImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r412", "r604", "r605" ], "lang": { "en-us": { "role": { "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.", "label": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r71", "r74", "r412", "r604", "r605" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "auth_ref": [ "r72" ], "lang": { "en-us": { "role": { "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.", "label": "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired", "terseLabel": "Business Acquisition, Percentage of Voting Interests Acquired" } } }, "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic": { "auth_ref": [ "r633", "r634" ], "lang": { "en-us": { "role": { "documentation": "The pro forma basic net income per share for a period as if the business combination or combinations had been completed at the beginning of a period.", "label": "us-gaap_BusinessAcquisitionProFormaEarningsPerShareBasic", "terseLabel": "Basic (in dollars per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted": { "auth_ref": [ "r633", "r634" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_BusinessAcquisitionProFormaEarningsPerShareDiluted", "terseLabel": "Diluted (in dollars per share)" } } }, "localname": "BusinessAcquisitionProFormaEarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details" ], "xbrltype": "perShareItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "auth_ref": [ "r633", "r634" ], "lang": { "en-us": { "role": { "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.", "label": "Business Acquisition, Pro Forma Information [Table Text Block]" } } }, "localname": "BusinessAcquisitionProFormaInformationTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionsProFormaIncomeLossFromContinuingOperationsBeforeChangesInAccountingAndExtraordinaryItemsNetOfTax": { "auth_ref": [ "r410", "r411" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of pro forma income from continuing operations as if the business combination had been completed at the beginning of a period.", "label": "us-gaap_BusinessAcquisitionsProFormaIncomeLossFromContinuingOperationsBeforeChangesInAccountingAndExtraordinaryItemsNetOfTax", "terseLabel": "Operating income" } } }, "localname": "BusinessAcquisitionsProFormaIncomeLossFromContinuingOperationsBeforeChangesInAccountingAndExtraordinaryItemsNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "auth_ref": [ "r410", "r411" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss", "terseLabel": "Net income" } } }, "localname": "BusinessAcquisitionsProFormaNetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "auth_ref": [ "r410", "r411" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.", "label": "us-gaap_BusinessAcquisitionsProFormaRevenue", "terseLabel": "Sales" } } }, "localname": "BusinessAcquisitionsProFormaRevenue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "auth_ref": [ "r70" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Acquisition costs", "terseLabel": "Business Combination, Acquisition Related Costs" } } }, "localname": "BusinessCombinationAcquisitionRelatedCosts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "auth_ref": [ "r1", "r2", "r16" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_BusinessCombinationConsiderationTransferred1", "totalLabel": "Total consideration" } } }, "localname": "BusinessCombinationConsiderationTransferred1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred": { "auth_ref": [ "r1", "r2", "r79", "r414" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities incurred by the acquirer as part of consideration transferred in a business combination.", "label": "us-gaap_BusinessCombinationConsiderationTransferredLiabilitiesIncurred", "terseLabel": "Business Combination, Consideration Transferred, Liabilities Incurred" } } }, "localname": "BusinessCombinationConsiderationTransferredLiabilitiesIncurred", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferredOther1": { "auth_ref": [ "r17" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of tangible or intangible assets, including a business or subsidiary of the acquirer transferred by the entity to the former owners of the acquiree. Excludes cash.", "label": "Other liability" } } }, "localname": "BusinessCombinationConsiderationTransferredOther1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1": { "auth_ref": [ "r416", "r640" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in the value of a contingent consideration liability, including, but not limited to, differences arising upon settlement.", "label": "Change in fair value of contingent consideration", "negatedLabel": "Change in fair value of contingent consideration", "terseLabel": "Business Combination, Contingent Consideration Arrangements, Change in Amount of Contingent Consideration, Liability" } } }, "localname": "BusinessCombinationContingentConsiderationArrangementsChangeInAmountOfContingentConsiderationLiability1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiability": { "auth_ref": [ "r3", "r80", "r415" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liability recognized arising from contingent consideration in a business combination.", "label": "us-gaap_BusinessCombinationContingentConsiderationLiability", "terseLabel": "Business Combination, Contingent Consideration, Liability, Total", "verboseLabel": "Accrued contingent consideration (earn-out)" } } }, "localname": "BusinessCombinationContingentConsiderationLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationContingentConsiderationLiabilityNoncurrent": { "auth_ref": [ "r4", "r80" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details": { "order": 0.0, "parentTag": "us-gaap_OtherLiabilitiesNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Accrued contingent consideration (earn-out)" } } }, "localname": "BusinessCombinationContingentConsiderationLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [ "r73" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "This element represents the amount of earnings or loss of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.", "label": "us-gaap_BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual", "terseLabel": "Business Combination, Pro Forma Information, Earnings or Loss of Acquiree since Acquisition Date, Actual" } } }, "localname": "BusinessCombinationProFormaInformationEarningsOrLossOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual": { "auth_ref": [ "r73" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "This element represents the amount of revenue of the acquiree since the acquisition date included in the consolidated income statement for the reporting period.", "label": "us-gaap_BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "terseLabel": "Business Combination, Pro Forma Information, Revenue of Acquiree since Acquisition Date, Actual" } } }, "localname": "BusinessCombinationProFormaInformationRevenueOfAcquireeSinceAcquisitionDateActual", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation": { "auth_ref": [ "r76" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lease obligation assumed in business combination.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation", "negatedLabel": "Lease liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCapitalLeaseObligation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther": { "auth_ref": [ "r76" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 3.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Other current assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsOther", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "auth_ref": [ "r76" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 1.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Accounts receivable" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": { "auth_ref": [ "r76" ], "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "negatedLabel": "Accounts payable" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles": { "auth_ref": [ "r75", "r76" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 4.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of identifiable intangible assets recognized as of the acquisition date.", "label": "Finite-Lived Intangibles" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibles", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": { "auth_ref": [ "r75", "r76" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 0.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of inventory recognized as of the acquisition date.", "label": "Inventory" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets": { "auth_ref": [ "r76" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 7.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "verboseLabel": "Other assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOtherNoncurrentAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "auth_ref": [ "r75", "r76" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 2.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "terseLabel": "Property, plant, and equipment" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet": { "auth_ref": [ "r76" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount recognized for assets, including goodwill, in excess of (less than) the aggregate liabilities assumed.", "label": "Net assets acquired" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredGoodwillAndLiabilitiesAssumedNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r50", "r51", "r52" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.", "label": "Capital additions accrued but not yet paid" } } }, "localname": "CapitalExpendituresIncurredButNotYetPaid", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAcquiredFromAcquisition": { "auth_ref": [ "r44" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow associated with the acquisition of business during the period (for example, cash that was held by the acquired business).", "label": "us-gaap_CashAcquiredFromAcquisition", "negatedLabel": "Cash from Advant" } } }, "localname": "CashAcquiredFromAcquisition", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r48", "r173", "r578" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.", "label": "Cash and cash equivalents" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r48", "r117", "r205" ], "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "periodEndLabel": "Cash and cash equivalents at end of period", "periodStartLabel": "Cash and cash equivalents at beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r5", "r117" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "totalLabel": "Net increase (decrease) in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowSupplementalDisclosuresTextBlock": { "auth_ref": [ "r114" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for supplemental cash flow activities, including cash, noncash, and part noncash transactions, for the period. 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.", "label": "Cash Flow, Supplemental Disclosures [Text Block]" } } }, "localname": "CashFlowSupplementalDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r37", "r90", "r480", "r525" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and contingencies" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r612", "r613", "r614", "r616", "r617", "r618", "r619", "r645", "r646", "r676", "r694", "r698" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r98" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common stock, par value (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r98", "r526" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common stock, shares authorized (in shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r98" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r20", "r98", "r526", "r544", "r698", "r699" ], "lang": { "en-us": { "role": { "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.", "label": "Common stock, shares outstanding (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r98", "r482", "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common stock, $.01 par value, 20,000,000 shares authorized; 7,668,371 and 7,638,812 shares issued and outstanding, respectively, at June 30, 2023; 7,611,244 and 7,581,685 shares issued and outstanding, respectively, at December 31, 2022" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r43", "r190", "r192", "r197", "r473", "r490" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "us-gaap_ComprehensiveIncomeNetOfTax", "totalLabel": "Comprehensive income" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Comprehensive Income" } } }, "localname": "ComprehensiveIncomeNetOfTaxAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "auth_ref": [ "r54", "r56", "r85", "r86", "r265", "r574" ], "lang": { "en-us": { "role": { "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.", "label": "Concentration Risk Benchmark [Domain]" } } }, "localname": "ConcentrationRiskBenchmarkDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "auth_ref": [ "r54", "r56", "r85", "r86", "r265", "r506", "r574" ], "lang": { "en-us": { "role": { "documentation": "Information by benchmark of concentration risk.", "label": "Concentration Risk Benchmark [Axis]" } } }, "localname": "ConcentrationRiskByBenchmarkAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskByTypeAxis": { "auth_ref": [ "r54", "r56", "r85", "r86", "r265", "r574", "r632" ], "lang": { "en-us": { "role": { "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.", "label": "Concentration Risk Type [Axis]" } } }, "localname": "ConcentrationRiskByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_ConcentrationRiskPercentage1": { "auth_ref": [ "r54", "r56", "r85", "r86", "r265" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_ConcentrationRiskPercentage1", "terseLabel": "Concentration Risk, Percentage" } } }, "localname": "ConcentrationRiskPercentage1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_ConcentrationRiskTypeDomain": { "auth_ref": [ "r54", "r56", "r85", "r86", "r265", "r574" ], "lang": { "en-us": { "role": { "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.", "label": "Concentration Risk Type [Domain]" } } }, "localname": "ConcentrationRiskTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_ConstructionInProgressMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.", "label": "Construction in Progress [Member]" } } }, "localname": "ConstructionInProgressMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r673" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNet": { "auth_ref": [ "r332", "r334", "r345" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "us-gaap_ContractWithCustomerAssetNet", "periodEndLabel": "Unbilled receivables - end of period", "periodStartLabel": "Unbilled receivables - beginning of period" } } }, "localname": "ContractWithCustomerAssetNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetReclassifiedToReceivable": { "auth_ref": [ "r598" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of decrease in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time from transfer to receivable due to right to consideration becoming unconditional.", "label": "us-gaap_ContractWithCustomerAssetReclassifiedToReceivable", "negatedLabel": "Decreases due to customer invoicing" } } }, "localname": "ContractWithCustomerAssetReclassifiedToReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r332", "r333", "r345" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "us-gaap_ContractWithCustomerLiability", "periodEndLabel": "Deferred revenue", "periodStartLabel": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r332", "r333", "r345" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r346" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "us-gaap_ContractWithCustomerLiabilityRevenueRecognized", "terseLabel": "Contract with Customer, Liability, Revenue Recognized" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r111", "r469" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of sales" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CreditFacilityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Axis]" } } }, "localname": "CreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "stringItemType" }, "us-gaap_CreditFacilityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing.", "label": "Credit Facility [Domain]" } } }, "localname": "CreditFacilityDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerConcentrationRiskMember": { "auth_ref": [ "r55", "r265" ], "lang": { "en-us": { "role": { "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.", "label": "Customer Concentration Risk [Member]" } } }, "localname": "CustomerConcentrationRiskMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerListsMember": { "auth_ref": [ "r78" ], "lang": { "en-us": { "role": { "documentation": "Information about customers such as their name and contact information; it may also be an extensive database that includes other information about the customers such as their order history and demographic information.", "label": "Customer Lists [Member]" } } }, "localname": "CustomerListsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "domainItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r127", "r206", "r303", "r309", "r310", "r311", "r312", "r313", "r314", "r319", "r326", "r327", "r328" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants.", "label": "Debt Disclosure [Text Block]" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r26", "r95", "r96", "r137", "r139", "r209", "r304", "r305", "r306", "r307", "r308", "r310", "r315", "r316", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r325", "r446", "r592", "r593", "r594", "r595", "r596", "r642" ], "lang": { "en-us": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1", "terseLabel": "Debt Instrument, Basis Spread on Variable Rate" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentFaceAmount": { "auth_ref": [ "r87", "r89", "r304", "r446", "r593", "r594" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Face (par) amount of debt instrument at time of issuance.", "label": "us-gaap_DebtInstrumentFaceAmount", "terseLabel": "Debt Instrument, Face Amount" } } }, "localname": "DebtInstrumentFaceAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "auth_ref": [ "r34", "r305" ], "lang": { "en-us": { "role": { "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.", "label": "us-gaap_DebtInstrumentInterestRateStatedPercentage", "terseLabel": "Debt Instrument, Interest Rate, Stated Percentage" } } }, "localname": "DebtInstrumentInterestRateStatedPercentage", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r35", "r209", "r304", "r305", "r306", "r307", "r308", "r310", "r315", "r316", "r317", "r318", "r320", "r321", "r322", "r323", "r324", "r325", "r446", "r592", "r593", "r594", "r595", "r596", "r642" ], "lang": { "en-us": { "role": { "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities.", "label": "Debt Instrument, Name [Domain]" } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentPeriodicPaymentPrincipal": { "auth_ref": [ "r35" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the required periodic payments applied to principal.", "label": "us-gaap_DebtInstrumentPeriodicPaymentPrincipal", "terseLabel": "Debt Instrument, Periodic Payment, Principal" } } }, "localname": "DebtInstrumentPeriodicPaymentPrincipal", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredCompensationLiabilityClassifiedNoncurrent": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "Non-qualified deferred compensation plan" } } }, "localname": "DeferredCompensationLiabilityClassifiedNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredCompensationPlanAssets": { "auth_ref": [ "r636" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of assets held under deferred compensation agreements.", "label": "us-gaap_DeferredCompensationPlanAssets", "terseLabel": "Non-qualified deferred compensation plan" } } }, "localname": "DeferredCompensationPlanAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r396", "r397" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 5.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting.", "label": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r396", "r397", "r479" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "us-gaap_DeferredIncomeTaxLiabilitiesNet", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxesAndTaxCredits": { "auth_ref": [ "r119" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) and income tax credits.", "label": "us-gaap_DeferredIncomeTaxesAndTaxCredits", "verboseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxesAndTaxCredits", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_DepreciationDepletionAndAmortization": { "auth_ref": [ "r13", "r248" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Depreciation and amortization" } } }, "localname": "DepreciationDepletionAndAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r674" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r357", "r359", "r387", "r388", "r390", "r607" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-Based Payment Arrangement [Text Block]" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureTextBlockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "us-gaap_DisclosureTextBlockAbstract", "terseLabel": "Notes to Financial Statements" } } }, "localname": "DisclosureTextBlockAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-item-5-other-information-", "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation", "http://www.ufpt.com/20230630/role/statement-note-10-leases", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-8-inventories", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment" ], "xbrltype": "stringItemType" }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent": { "auth_ref": [ "r6", "r8", "r93", "r94", "r126", "r169", "r170" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount classified as assets attributable to disposal group held for sale or disposed of, expected to be disposed of after one year or the normal operating cycle, if longer.", "label": "us-gaap_DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent", "terseLabel": "Disposal Group, Including Discontinued Operation, Assets, Noncurrent, Total" } } }, "localname": "DisposalGroupIncludingDiscontinuedOperationAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of consideration received or receivable for the disposal of assets and liabilities, including discontinued operation.", "label": "us-gaap_DisposalGroupIncludingDiscontinuedOperationConsideration", "terseLabel": "Disposal Group, Including Discontinued Operation, Consideration" } } }, "localname": "DisposalGroupIncludingDiscontinuedOperationConsideration", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": { "auth_ref": [ "r604", "r605" ], "lang": { "en-us": { "role": { "documentation": "Name of disposal group.", "label": "Disposal Group Name [Domain]" } } }, "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net income per share:" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r198", "r215", "r216", "r217", "r218", "r219", "r225", "r227", "r232", "r233", "r234", "r238", "r430", "r431", "r474", "r491", "r585" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Basic (in dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r198", "r215", "r216", "r217", "r218", "r219", "r227", "r232", "r233", "r234", "r238", "r430", "r431", "r474", "r491", "r585" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period available to each share of common stock or common unit outstanding during the reporting period and to each share or unit that would have been outstanding assuming the issuance of common shares or units for all dilutive potential common shares or units outstanding during the reporting period.", "label": "Diluted (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r224", "r235", "r236", "r237" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r678" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 0.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; 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.", "label": "Effect of foreign currency exchange rates on cash and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r399" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "terseLabel": "Effective Income Tax Rate Reconciliation, Percent" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r389" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.", "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r389" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "durationItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": { "auth_ref": [ "r386" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement.", "label": "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "terseLabel": "Share-Based Payment Arrangement, Expense, Tax Benefit" } } }, "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r20", "r168", "r193", "r194", "r195", "r210", "r211", "r212", "r214", "r220", "r222", "r239", "r270", "r271", "r331", "r391", "r392", "r393", "r403", "r404", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r439", "r440", "r441", "r442", "r443", "r444", "r462", "r500", "r501", "r502", "r514", "r565" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "auth_ref": [ "r83", "r135" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of assets, 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).", "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]" } } }, "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": { "auth_ref": [ "r21" ], "lang": { "en-us": { "role": { "documentation": "Class of asset.", "label": "Asset Class [Domain]" } } }, "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueByAssetClassAxis": { "auth_ref": [ "r83", "r84" ], "lang": { "en-us": { "role": { "documentation": "Information by class of asset.", "label": "Asset Class [Axis]" } } }, "localname": "FairValueByAssetClassAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r317", "r349", "r350", "r351", "r352", "r353", "r354", "r434", "r463", "r464", "r465", "r593", "r594", "r601", "r602", "r603" ], "lang": { "en-us": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "auth_ref": [ "r433", "r434", "r435", "r436", "r437" ], "lang": { "en-us": { "role": { "documentation": "Information by measurement frequency.", "label": "Measurement Frequency [Axis]" } } }, "localname": "FairValueByMeasurementFrequencyAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r432" ], "lang": { "en-us": { "role": { "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.", "label": "Fair Value Disclosures [Text Block]" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel3Member": { "auth_ref": [ "r317", "r349", "r350", "r351", "r352", "r353", "r354", "r434", "r465", "r593", "r594", "r601", "r602", "r603" ], "lang": { "en-us": { "role": { "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.", "label": "Fair Value, Inputs, Level 3 [Member]" } } }, "localname": "FairValueInputsLevel3Member", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementFrequencyDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Measurement frequency.", "label": "Measurement Frequency [Domain]" } } }, "localname": "FairValueMeasurementFrequencyDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r317", "r349", "r350", "r351", "r352", "r353", "r354", "r463", "r464", "r465", "r593", "r594", "r601", "r602", "r603" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsRecurringMember": { "auth_ref": [ "r432", "r437" ], "lang": { "en-us": { "role": { "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.", "label": "Fair Value, Recurring [Member]" } } }, "localname": "FairValueMeasurementsRecurringMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseInterestExpense": { "auth_ref": [ "r449", "r453", "r608" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details": { "order": 2.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of interest expense on finance lease liability.", "label": "Interest on lease liabilities" } } }, "localname": "FinanceLeaseInterestExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r448", "r461" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.", "label": "Present value of lease liabilities, finance" } } }, "localname": "FinanceLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityCurrent": { "auth_ref": [ "r448" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": 1.0, "parentTag": "ufpt_OperatingAndFinanceLeasesLiabilityCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.", "label": "Finance lease liabilities, current" } } }, "localname": "FinanceLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityNoncurrent": { "auth_ref": [ "r448" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": 1.0, "parentTag": "ufpt_OperatingAndFinanceLeasesLiabilityNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.", "label": "Finance lease liabilities, long-term" } } }, "localname": "FinanceLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDue": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease.", "label": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "totalLabel": "Total lease payments, finance" } } }, "localname": "FinanceLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 1.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths", "terseLabel": "2024, finance" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 4.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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).", "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour", "terseLabel": "2027, finance" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 3.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree", "terseLabel": "2026, finance" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 2.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo", "terseLabel": "2025, finance" } } }, "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r680" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 0.0, "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance lease to be paid in remainder of current fiscal year.", "label": "us-gaap_FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "terseLabel": "Remainder of 2023, finance" } } }, "localname": "FinanceLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r461" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease.", "label": "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount", "negatedLabel": "Less: Interest, finance" } } }, "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r450", "r457" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for principal payment on finance lease.", "label": "Financing cash flows from finance leases", "negatedLabel": "Principal payments on finance lease obligations" } } }, "localname": "FinanceLeasePrincipalPayments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAsset": { "auth_ref": [ "r447" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": 1.0, "parentTag": "ufpt_OperatingAndFinanceLeasesRightofuseAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.", "label": "Finance lease ROU assets" } } }, "localname": "FinanceLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseRightOfUseAssetAmortization": { "auth_ref": [ "r449", "r453", "r608" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details": { "order": 1.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.", "label": "Amortization of right of use assets" } } }, "localname": "FinanceLeaseRightOfUseAssetAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r460", "r608" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for finance lease calculated at point in time.", "label": "us-gaap_FinanceLeaseWeightedAverageDiscountRatePercent", "terseLabel": "Finance" } } }, "localname": "FinanceLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "percentItemType" }, "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r459", "r608" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining lease term for finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "us-gaap_FinanceLeaseWeightedAverageRemainingLeaseTerm1", "terseLabel": "Finance (Year)" } } }, "localname": "FinanceLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetUsefulLife": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Weighted-average amortization period (years) (Year)" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r177", "r286" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details": { "order": 1.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization", "negatedLabel": "Accumulated amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 2.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "verboseLabel": "Thereafter" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "auth_ref": [ "r123" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 3.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "verboseLabel": "2024" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "auth_ref": [], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 4.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "verboseLabel": "Remainder of 2023" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "auth_ref": [ "r123" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 0.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "verboseLabel": "2028" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "auth_ref": [ "r123" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 1.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "verboseLabel": "2027" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "auth_ref": [ "r123" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 5.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "verboseLabel": "2026" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "auth_ref": [ "r123" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": 6.0, "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "verboseLabel": "2025" } } }, "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r284", "r285", "r286", "r287", "r470", "r471" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r122", "r471" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details": { "order": 0.0, "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Gross amount" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r59", "r61" ], "lang": { "en-us": { "role": { "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.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r122", "r470" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "us-gaap_FiniteLivedIntangibleAssetsNet", "totalLabel": "Total" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnDispositionOfAssets": { "auth_ref": [ "r641", "r665", "r666" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.", "label": "us-gaap_GainLossOnDispositionOfAssets", "negatedLabel": "Loss (gain) on disposal of property, plant & equipment" } } }, "localname": "GainLossOnDispositionOfAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnSaleOfBusiness": { "auth_ref": [ "r420", "r641" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.", "label": "us-gaap_GainLossOnSaleOfBusiness", "terseLabel": "Gain (Loss) on Disposition of Business" } } }, "localname": "GainLossOnSaleOfBusiness", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r13" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 3.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.", "label": "us-gaap_GainLossOnSaleOfPropertyPlantEquipment", "negatedLabel": "Loss (gain) on sale of property, plant & equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_GeographicDistributionAxis": { "auth_ref": [ "r150", "r151", "r152", "r153", "r154", "r155", "r156", "r157", "r158", "r159", "r160", "r161", "r162", "r163", "r164", "r165", "r166", "r167", "r475", "r476", "r589" ], "lang": { "en-us": { "role": { "documentation": "Information by geographic distribution of business activity identified as either domestic or foreign. Excludes names of countries, states and provinces, and cities.", "label": "Geographic Distribution [Axis]" } } }, "localname": "GeographicDistributionAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_GeographicDistributionDomain": { "auth_ref": [ "r150", "r151", "r152", "r153", "r154", "r155", "r156", "r157", "r158", "r159", "r160", "r161", "r162", "r163", "r164", "r165", "r166", "r167", "r475", "r476" ], "lang": { "en-us": { "role": { "documentation": "Allocation of business activity identified as domestic or foreign. Excludes names of countries, states and provinces, and cities.", "label": "Geographic Distribution [Domain]" } } }, "localname": "GeographicDistributionDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_GeographicDistributionForeignMember": { "auth_ref": [ "r150", "r151", "r152", "r153", "r154", "r155", "r156", "r157", "r158", "r159", "r160", "r161", "r162", "r163", "r164", "r165", "r166", "r167", "r475", "r476", "r590" ], "lang": { "en-us": { "role": { "documentation": "Allocation of business activity identified as foreign.", "label": "Geographic Distribution, Foreign [Member]" } } }, "localname": "GeographicDistributionForeignMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r176", "r281", "r472", "r591", "r609", "r655", "r662" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 6.0, "parentTag": "ufpt_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsIncludingGoodwill", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "periodEndLabel": "June 30, 2023", "periodStartLabel": "December 31, 2022" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r282" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Foreign currency translation" } } }, "localname": "GoodwillForeignCurrencyTranslationGainLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r110", "r207", "r244", "r252", "r257", "r260", "r269", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r438", "r587", "r670" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "us-gaap_GrossProfit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r0", "r108", "r141", "r244", "r252", "r257", "r260", "r476", "r488", "r587" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "totalLabel": "Income before income tax expense" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": { "auth_ref": [ "r604", "r605" ], "lang": { "en-us": { "role": { "documentation": "Information by name of disposal group.", "label": "Disposal Group Name [Axis]" } } }, "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r288", "r289", "r549" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r289", "r549" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r208", "r395", "r400", "r401", "r402", "r405", "r407", "r408", "r409", "r513" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-15-income-tax" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r144", "r148", "r221", "r222", "r249", "r398", "r406", "r492" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income tax expense" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r49" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income, net of any cash received during the current period as refunds for the overpayment of taxes.", "label": "Income taxes, net of refunds" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "us-gaap_IncreaseDecreaseInAccountsPayable", "verboseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 0.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.", "label": "us-gaap_IncreaseDecreaseInAccountsReceivable", "negatedLabel": "Receivables, net" } } }, "localname": "IncreaseDecreaseInAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.", "label": "us-gaap_IncreaseDecreaseInAccruedLiabilities", "verboseLabel": "Accrued expenses" } } }, "localname": "IncreaseDecreaseInAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r468", "r640" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "us-gaap_IncreaseDecreaseInContractWithCustomerLiability", "verboseLabel": "Deferred revenue" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable": { "auth_ref": [ "r640" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes.", "label": "Income taxes payable" } } }, "localname": "IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "us-gaap_IncreaseDecreaseInInventories", "negatedLabel": "Inventories" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Changes in operating assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingAssets": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating assets classified as other.", "label": "us-gaap_IncreaseDecreaseInOtherOperatingAssets", "negatedLabel": "Other assets" } } }, "localname": "IncreaseDecreaseInOtherOperatingAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherOperatingLiabilities": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 7.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in operating liabilities classified as other.", "label": "Non-qualified deferred compensation plan and other liabilities" } } }, "localname": "IncreaseDecreaseInOtherOperatingLiabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "negatedLabel": "Prepaid expenses and other current assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "auth_ref": [ "r228", "r229", "r230", "r234", "r358" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method.", "label": "Weighted average common equivalent shares due to restricted stock, stock options and RSUs (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" ], "xbrltype": "sharesItemType" }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r283" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for all or part of the information related to intangible assets.", "label": "Intangible Assets Disclosure [Text Block]" } } }, "localname": "IntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-" ], "xbrltype": "textBlockItemType" }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "auth_ref": [ "r57", "r60" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.", "label": "us-gaap_IntangibleAssetsNetExcludingGoodwill", "terseLabel": "Intangible assets, net", "totalLabel": "Net balance" } } }, "localname": "IntangibleAssetsNetExcludingGoodwill", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_IntellectualPropertyMember": { "auth_ref": [ "r25" ], "lang": { "en-us": { "role": { "documentation": "Intangible asset arising from original creative thought. Include, but is not limited to, trademarks, patents, and copyrights.", "label": "Intellectual Property [Member]" } } }, "localname": "IntellectualPropertyMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "domainItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r88", "r143", "r196", "r247", "r445", "r550", "r620", "r697" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest expense, net" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r201", "r203", "r204" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount.", "label": "Interest" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r278" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.", "label": "Inventory Disclosure [Text Block]" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-8-inventories" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "auth_ref": [ "r121", "r582" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.", "label": "Finished goods" } } }, "localname": "InventoryFinishedGoodsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r185", "r579", "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventories", "totalLabel": "Total inventory" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "auth_ref": [ "r121", "r584" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details": { "order": 0.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.", "label": "Raw materials" } } }, "localname": "InventoryRawMaterialsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "auth_ref": [ "r121", "r583" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Work in process" } } }, "localname": "InventoryWorkInProcessNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LandAndLandImprovementsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Real estate held and assets that are an addition or improvement to real estate held.", "label": "Land and Land Improvements [Member]" } } }, "localname": "LandAndLandImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "us-gaap_LeaseCost": { "auth_ref": [ "r452", "r608" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lease cost recognized by lessee for lease contract.", "label": "us-gaap_LeaseCost", "totalLabel": "Total lease cost" } } }, "localname": "LeaseCost", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LeaseCostAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Lease Cost:" } } }, "localname": "LeaseCostAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "stringItemType" }, "us-gaap_LeaseCostTableTextBlock": { "auth_ref": [ "r679" ], "lang": { "en-us": { "role": { "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.", "label": "Lease, Cost [Table Text Block]" } } }, "localname": "LeaseCostTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_LeaseholdImprovementsMember": { "auth_ref": [ "r125" ], "lang": { "en-us": { "role": { "documentation": "Additions or improvements to assets held under a lease arrangement.", "label": "Leasehold Improvements [Member]" } } }, "localname": "LeaseholdImprovementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.", "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "totalLabel": "Total lease payments, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 1.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "terseLabel": "2024, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 4.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in 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).", "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "terseLabel": "2027, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 3.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "terseLabel": "2026, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "auth_ref": [ "r461" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 2.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).", "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "terseLabel": "2025, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "auth_ref": [ "r680" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details": { "order": 0.0, "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.", "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "terseLabel": "Remainder of 2023, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "auth_ref": [ "r461" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.", "label": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "negatedLabel": "Less: Interest, operating" } } }, "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LettersOfCreditOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.", "label": "us-gaap_LettersOfCreditOutstandingAmount", "terseLabel": "Letters of Credit Outstanding, Amount" } } }, "localname": "LettersOfCreditOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r30", "r207", "r269", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r419", "r421", "r422", "r438", "r524", "r586", "r622", "r670", "r682", "r683" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "us-gaap_Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r103", "r140", "r485", "r609", "r643", "r652", "r677" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "us-gaap_LiabilitiesAndStockholdersEquity", "totalLabel": "Total liabilities and stockholders' equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r33", "r172", "r207", "r269", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r419", "r421", "r422", "r438", "r609", "r670", "r682", "r683" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 5.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "us-gaap_LiabilitiesCurrent", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityAxis": { "auth_ref": [ "r29", "r642" ], "lang": { "en-us": { "role": { "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.", "label": "Lender Name [Axis]" } } }, "localname": "LineOfCreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityLenderDomain": { "auth_ref": [ "r29", "r642" ], "lang": { "en-us": { "role": { "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.", "label": "Line of Credit Facility, Lender [Domain]" } } }, "localname": "LineOfCreditFacilityLenderDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r29" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.", "label": "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity", "terseLabel": "Line of Credit Facility, Maximum Borrowing Capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars.", "label": "Line of Credit [Member]" } } }, "localname": "LineOfCreditMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "domainItemType" }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "auth_ref": [ "r650" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.", "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]" } } }, "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses" ], "xbrltype": "textBlockItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r26", "r139", "r316", "r329", "r593", "r594", "r690" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.", "label": "Total long-term debt", "terseLabel": "Long-Term Debt", "totalLabel": "Long-Term Debt" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtCurrent": { "auth_ref": [ "r180" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as current. Excludes lease obligation.", "label": "Current installments of long-term debt", "negatedLabel": "Current portion" } } }, "localname": "LongTermDebtCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "auth_ref": [ "r15", "r209", "r321" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details": { "order": 1.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "verboseLabel": "2024" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "auth_ref": [ "r15", "r209", "r321" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details": { "order": 3.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "verboseLabel": "2026" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "auth_ref": [ "r15", "r209", "r321" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details": { "order": 2.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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).", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "verboseLabel": "2025" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "auth_ref": [ "r644" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details": { "order": 0.0, "parentTag": "us-gaap_LongTermDebt", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "verboseLabel": "Remainder of 2023" } } }, "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtNoncurrent": { "auth_ref": [ "r181" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation.", "label": "Long-term debt, excluding current portion", "terseLabel": "Long-term debt, excluding current installments" } } }, "localname": "LongTermDebtNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongtermDebtTypeAxis": { "auth_ref": [ "r35" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-term debt.", "label": "Long-Term Debt, Type [Axis]" } } }, "localname": "LongtermDebtTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "stringItemType" }, "us-gaap_LongtermDebtTypeDomain": { "auth_ref": [ "r35", "r64" ], "lang": { "en-us": { "role": { "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.", "label": "Long-Term Debt, Type [Domain]" } } }, "localname": "LongtermDebtTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "domainItemType" }, "us-gaap_MachineryAndEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.", "label": "Machinery and Equipment [Member]" } } }, "localname": "MachineryAndEquipmentMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "us-gaap_MergersAcquisitionsAndDispositionsDisclosuresTextBlock": { "auth_ref": [ "r92", "r131" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for business combinations, including leverage buyout transactions (as applicable), and divestitures. This may include a description of a business combination or divestiture (or series of individually immaterial business combinations or divestitures) completed during the period, including background, timing, and assets and liabilities recognized and reclassified or sold. This element does not include fixed asset sales and plant closings.", "label": "Mergers, Acquisitions and Dispositions Disclosures [Text Block]" } } }, "localname": "MergersAcquisitionsAndDispositionsDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture" ], "xbrltype": "textBlockItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r202" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "totalLabel": "Net cash (used in) provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r202" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r117", "r118", "r119" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "totalLabel": "Net cash provided by (used in) operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r109", "r119", "r142", "r170", "r188", "r191", "r195", "r207", "r213", "r215", "r216", "r217", "r218", "r221", "r222", "r231", "r244", "r252", "r257", "r260", "r269", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r301", "r302", "r431", "r438", "r489", "r546", "r563", "r564", "r587", "r620", "r670" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net income", "totalLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Non-cash investing and financing activities:" } } }, "localname": "NoncashInvestingAndFinancingItemsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "stringItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r77" ], "lang": { "en-us": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details" ], "xbrltype": "domainItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [ "r649" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_NumberOfOperatingSegments", "terseLabel": "Number of Operating Segments" } } }, "localname": "NumberOfOperatingSegments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "integerItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r244", "r252", "r257", "r260", "r587" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "us-gaap_OperatingIncomeLoss", "totalLabel": "Operating income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseCost": { "auth_ref": [ "r454", "r608" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details": { "order": 3.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Operating lease cost" } } }, "localname": "OperatingLeaseCost", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiability": { "auth_ref": [ "r448" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.", "label": "Present value of lease liabilities, operating" } } }, "localname": "OperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r448" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": 0.0, "parentTag": "ufpt_OperatingAndFinanceLeasesLiabilityCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Operating lease liabilities, current" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r448" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": 0.0, "parentTag": "ufpt_OperatingAndFinanceLeasesLiabilityNoncurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating lease liabilities, long-term" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeasePayments": { "auth_ref": [ "r451", "r457" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.", "label": "Operating cash flows from operating leases" } } }, "localname": "OperatingLeasePayments", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r447" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details": { "order": 0.0, "parentTag": "ufpt_OperatingAndFinanceLeasesRightofuseAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating lease ROU assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "auth_ref": [ "r460", "r608" ], "lang": { "en-us": { "role": { "documentation": "Weighted average discount rate for operating lease calculated at point in time.", "label": "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent", "terseLabel": "Operating" } } }, "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "percentItemType" }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "auth_ref": [ "r459", "r608" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1", "terseLabel": "Operating (Year)" } } }, "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "durationItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r91", "r133", "r507", "r508" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r178" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 6.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncurrent assets classified as other.", "label": "Other assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r11", "r18", "r134" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.", "label": "Foreign currency translation adjustment" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r11", "r18", "r134", "r189", "r192" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.", "label": "Other comprehensive income", "totalLabel": "Other comprehensive loss" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other comprehensive income:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_OtherLiabilitiesDisclosureTextBlock": { "auth_ref": [ "r32" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for other liabilities.", "label": "Other Liabilities Disclosure [Text Block]" } } }, "localname": "OtherLiabilitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r36" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "us-gaap_OtherLiabilitiesNoncurrent", "totalLabel": "Other Liabilities, Noncurrent", "verboseLabel": "Other liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNoncurrentLiabilitiesTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of other noncurrent liabilities.", "label": "Other Noncurrent Liabilities [Table Text Block]" } } }, "localname": "OtherNoncurrentLiabilitiesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r113" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.", "label": "us-gaap_OtherNonoperatingIncomeExpense", "negatedLabel": "Other (income) expenses" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities": { "auth_ref": [ "r10" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow, not made soon after acquisition date of business combination, to settle contingent consideration liability up to amount recognized at acquisition date, including, but not limited to, measurement period adjustment and less amount paid soon after acquisition date.", "label": "us-gaap_PaymentForContingentConsiderationLiabilityFinancingActivities", "negatedLabel": "Payment of contingent consideration", "terseLabel": "Payment for Contingent Consideration Liability, Financing Activities" } } }, "localname": "PaymentForContingentConsiderationLiabilityFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [ "r200" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "negatedLabel": "Payment of statutory withholdings for restricted stock units vested" } } }, "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesGross": { "auth_ref": [ "r45", "r413" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details": { "order": 0.0, "parentTag": "us-gaap_BusinessCombinationConsiderationTransferred1", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price.", "label": "Cash paid at closing", "terseLabel": "Payments to Acquire Businesses, Gross" } } }, "localname": "PaymentsToAcquireBusinessesGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r45" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "negatedLabel": "Acquisition, net of cash acquired", "terseLabel": "Payments to Acquire Businesses, Net of Cash Acquired, Total" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r116" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 0.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment", "negatedLabel": "Additions to property, plant, and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r97", "r330" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred stock, par value (in dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r97", "r526" ], "lang": { "en-us": { "role": { "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.", "label": "Preferred stock, shares authorized (in shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r97", "r330" ], "lang": { "en-us": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred stock, shares issued (in shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r97", "r481", "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Preferred stock, $.01 par value, 1,000,000 shares authorized; no shares issued" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseCurrent": { "auth_ref": [ "r186", "r279", "r280", "r581" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits within a future period of one year or the normal operating cycle, if longer.", "label": "Prepaid expenses and other current assets" } } }, "localname": "PrepaidExpenseCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrimeRateMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.", "label": "Prime Rate [Member]" } } }, "localname": "PrimeRateMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r46", "r642" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 0.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "Proceeds from advances on revolving line of credit" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r115" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale.", "label": "Proceeds from sale of fixed assets" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromStockOptionsExercised": { "auth_ref": [ "r9", "r24" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement.", "label": "Proceeds from exercise of stock options", "terseLabel": "Proceeds from Stock Options Exercised" } } }, "localname": "ProceedsFromStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductMember": { "auth_ref": [ "r599" ], "lang": { "en-us": { "role": { "documentation": "Article or substance produced by nature, labor or machinery.", "label": "Product [Member]" } } }, "localname": "ProductMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details" ], "xbrltype": "domainItemType" }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "auth_ref": [ "r14" ], "lang": { "en-us": { "role": { "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.", "label": "Long-Lived Tangible Asset [Axis]" } } }, "localname": "PropertyPlantAndEquipmentByTypeAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "stringItemType" }, "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": { "auth_ref": [ "r124", "r145", "r146", "r147" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.", "label": "Property, Plant and Equipment Disclosure [Text Block]" } } }, "localname": "PropertyPlantAndEquipmentDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentGross": { "auth_ref": [ "r125", "r174", "r487" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details": { "order": 0.0, "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "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.", "label": "Property, plant, and equipment" } } }, "localname": "PropertyPlantAndEquipmentGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r14", "r477", "r487", "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_Assets", "weight": 1.0 }, "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property, plant and equipment, net", "totalLabel": "Net property, plant and equipment" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "auth_ref": [ "r14" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.", "label": "Property, Plant and Equipment [Table Text Block]" } } }, "localname": "PropertyPlantAndEquipmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "auth_ref": [ "r125" ], "lang": { "en-us": { "role": { "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.", "label": "Long-Lived Tangible Asset [Domain]" } } }, "localname": "PropertyPlantAndEquipmentTypeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details" ], "xbrltype": "domainItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r199", "r274" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.", "label": "Provision (Adjustment) for expected credit losses" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesNetCurrent": { "auth_ref": [ "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.", "label": "us-gaap_ReceivablesNetCurrent", "totalLabel": "Receivables, net" } } }, "localname": "ReceivablesNetCurrent", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLinesOfCredit": { "auth_ref": [ "r47", "r642" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "us-gaap_RepaymentsOfLinesOfCredit", "negatedLabel": "Payments on revolving line of credit" } } }, "localname": "RepaymentsOfLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLongTermDebt": { "auth_ref": [ "r47", "r511" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.", "label": "us-gaap_RepaymentsOfLongTermDebt", "negatedLabel": "Principal payments of long-term debt" } } }, "localname": "RepaymentsOfLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockUnitsRSUMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met.", "label": "Restricted Stock Units (RSUs) [Member]" } } }, "localname": "RestrictedStockUnitsRSUMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r100", "r128", "r484", "r503", "r505", "r512", "r527", "r609" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated undistributed earnings (deficit).", "label": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r168", "r210", "r211", "r212", "r214", "r220", "r222", "r270", "r271", "r391", "r392", "r393", "r403", "r404", "r423", "r425", "r426", "r428", "r429", "r500", "r502", "r514", "r698" ], "lang": { "en-us": { "role": { "documentation": "Accumulated undistributed earnings (deficit).", "label": "Retained Earnings [Member]" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "auth_ref": [ "r245", "r246", "r251", "r255", "r256", "r262", "r264", "r265", "r343", "r344", "r469" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "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.", "label": "Net sales" } } }, "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r149", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r347" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details" ], "xbrltype": "domainItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r458", "r608" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.", "label": "Operating lease right of use asset" } } }, "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_SalesRevenueNetMember": { "auth_ref": [ "r265", "r631" ], "lang": { "en-us": { "role": { "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.", "label": "Revenue Benchmark [Member]" } } }, "localname": "SalesRevenueNetMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_ScenarioAdjustmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Domain member used to indicate figures that are adjustments during a period or as of a point in time. This domain member would never be expected to appear in a relationship group without the \"Scenario, Previously Reported\" Member with the same parent.", "label": "Scenario, Adjustment [Member]" } } }, "localname": "ScenarioAdjustmentMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "auth_ref": [ "r39" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]" } } }, "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of supplemental cash flow information for the periods presented.", "label": "Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]" } } }, "localname": "ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.", "label": "Schedule of Debt [Table Text Block]" } } }, "localname": "ScheduleOfDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r59", "r61" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r591", "r654", "r655", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Schedule of Goodwill [Table Text Block]" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r27", "r104", "r105", "r106" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "Schedule of Inventory, Current [Table Text Block]" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "auth_ref": [ "r15" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt.", "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]" } } }, "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock": { "auth_ref": [ "r132" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Recognized Identified Assets Acquired and Liabilities Assumed [Table Text Block]" } } }, "localname": "ScheduleOfRecognizedIdentifiedAssetsAcquiredAndLiabilitiesAssumedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the extent of the entity's reliance on its major customers, if revenues from transactions with a single external customer amount to 10 percent or more of entity revenues, including the disclosure of that fact, the total amount of revenues from each such customer, and the identity of the reportable segment or segments reporting the revenues. The entity need not disclose the identity of a major customer or the amount of revenues that each segment reports from that customer. For these purposes, a group of companies known to the entity to be under common control is considered a single customer, and the federal government, a state government, a local government such as a county or municipality, or a foreign government is each considered a single customer.", "label": "Schedule of Revenue by Major Customers by Reporting Segments [Table Text Block]" } } }, "localname": "ScheduleOfRevenueByMajorCustomersByReportingSegmentsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock": { "auth_ref": [ "r68" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the number and weighted-average grant date fair value for restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock units that were granted, vested, or forfeited during the year.", "label": "Share-Based Payment Arrangement, Restricted Stock Unit, Activity [Table Text Block]" } } }, "localname": "ScheduleOfShareBasedCompensationRestrictedStockUnitsAwardActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "auth_ref": [ "r22", "r23", "r68" ], "lang": { "en-us": { "role": { "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.", "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]" } } }, "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "auth_ref": [ "r130" ], "lang": { "en-us": { "role": { "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.", "label": "Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]" } } }, "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": { "auth_ref": [ "r53" ], "lang": { "en-us": { "role": { "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).", "label": "Schedule of Weighted Average Number of Shares [Table Text Block]" } } }, "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "auth_ref": [ "r61" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets.", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]" } } }, "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r250", "r254", "r258", "r259", "r260", "r261", "r262", "r263", "r265" ], "lang": { "en-us": { "role": { "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.", "label": "Segment Reporting Disclosure [Text Block]" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r112" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited": { "order": 4.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, general & administrative expenses" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.", "label": "Selling, General and Administrative Expenses [Member]" } } }, "localname": "SellingGeneralAndAdministrativeExpensesMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r12" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of noncash expense for share-based payment arrangement.", "label": "us-gaap_ShareBasedCompensation", "verboseLabel": "Share-based compensation" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "auth_ref": [ "r376" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "negatedLabel": "Shares forfeited, restricted stock units (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "auth_ref": [ "r376" ], "lang": { "en-us": { "role": { "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.", "label": "Shares forfeited, weighted average award date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r374" ], "lang": { "en-us": { "role": { "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).", "label": "Awarded, restricted stock units (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r374" ], "lang": { "en-us": { "role": { "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).", "label": "Awarded, weighted average award date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r371", "r372" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "periodEndLabel": "Outstanding, restricted stock units (in shares)", "periodStartLabel": "Outstanding, restricted stock units (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r371", "r372" ], "lang": { "en-us": { "role": { "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "periodEndLabel": "Outstanding, weighted average award date fair value (in dollars per share)", "periodStartLabel": "Outstanding, weighted average award date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r375" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "negatedLabel": "Shares vested, restricted stock units (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r375" ], "lang": { "en-us": { "role": { "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.", "label": "Shares vested, weighted average award date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Agreed-upon price for the exchange of the underlying asset relating to the share-based payment award.", "label": "Exercise price (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "auth_ref": [ "r383" ], "lang": { "en-us": { "role": { "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.", "label": "Expected dividends" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "auth_ref": [ "r382" ], "lang": { "en-us": { "role": { "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.", "label": "Expected volatility" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "auth_ref": [ "r384" ], "lang": { "en-us": { "role": { "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.", "label": "Risk-free interest rate" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "percentItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "auth_ref": [ "r365" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "terseLabel": "Exercisable, shares under options (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "auth_ref": [ "r365" ], "lang": { "en-us": { "role": { "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "terseLabel": "Exercisable, weighted average exercise price (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": { "auth_ref": [ "r378" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period, Intrinsic Value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": { "auth_ref": [ "r675" ], "lang": { "en-us": { "role": { "documentation": "Net number of share options (or share units) granted during the period.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross": { "auth_ref": [ "r367" ], "lang": { "en-us": { "role": { "documentation": "Gross number of share options (or share units) granted during the period.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "terseLabel": "Granted, shares under options (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodGross", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r377" ], "lang": { "en-us": { "role": { "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.", "label": "Weighted-average grant date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "auth_ref": [ "r67" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.", "label": "Outstanding, aggregate intrinsic value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "auth_ref": [ "r363", "r364" ], "lang": { "en-us": { "role": { "documentation": "Number of options outstanding, including both vested and non-vested options.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "periodEndLabel": "Outstanding, shares under options (in shares)", "periodStartLabel": "Outstanding, shares under options (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "auth_ref": [ "r363", "r364" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "periodEndLabel": "Outstanding, weighted average exercise price (in dollars per share)", "periodStartLabel": "Outstanding, weighted average exercise price (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice": { "auth_ref": [ "r380" ], "lang": { "en-us": { "role": { "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest exercisable or convertible options. 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.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice", "terseLabel": "Vested and expected to vest, weighted average exercise price (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": { "auth_ref": [ "r379" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. 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.", "label": "Vested and expected to vest, aggregate intrinsic value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber": { "auth_ref": [ "r379" ], "lang": { "en-us": { "role": { "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.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "terseLabel": "Vested and expected to vest, shares under options (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r368" ], "lang": { "en-us": { "role": { "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares.", "label": "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "terseLabel": "Granted, weighted average exercise price (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "auth_ref": [ "r367" ], "lang": { "en-us": { "role": { "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options.", "label": "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "terseLabel": "Granted (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_SharePrice": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Price of a single share of a number of saleable stocks of a company.", "label": "us-gaap_SharePrice", "terseLabel": "Share Price (in dollars per share)" } } }, "localname": "SharePrice", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "perShareItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "auth_ref": [ "r381" ], "lang": { "en-us": { "role": { "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.", "label": "Expected term (years) (Year)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1": { "auth_ref": [ "r67" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of difference between fair value of the underlying shares reserved for issuance and exercise price of vested portions of options outstanding and currently exercisable.", "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "terseLabel": "Exercisable, aggregate intrinsic value" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableIntrinsicValue1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "auth_ref": [ "r67" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "terseLabel": "Exercisable, weighted average remaining contractual life (Year)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "auth_ref": [ "r129" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Outstanding, weighted average remaining contractual life (Year)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "durationItemType" }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "auth_ref": [ "r379" ], "lang": { "en-us": { "role": { "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. 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.", "label": "Vested and expected to vest, weighted average remaining contractual life (Year)" } } }, "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "durationItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "us-gaap_SharesOutstanding", "periodEndLabel": "Balance (in shares)", "periodStartLabel": "Balance (in shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation", "negatedLabel": "Net share settlement of RSUs (in shares)", "terseLabel": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation (in shares)" } } }, "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual" ], "xbrltype": "sharesItemType" }, "us-gaap_ShortTermLeaseCost": { "auth_ref": [ "r455", "r608" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details": { "order": 0.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.", "label": "Short-term lease cost" } } }, "localname": "ShortTermLeaseCost", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r20", "r38", "r168", "r193", "r194", "r195", "r210", "r211", "r212", "r214", "r220", "r222", "r239", "r270", "r271", "r331", "r391", "r392", "r393", "r403", "r404", "r423", "r424", "r425", "r426", "r427", "r428", "r429", "r439", "r440", "r441", "r442", "r443", "r444", "r462", "r500", "r501", "r502", "r514", "r565" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [ "r210", "r211", "r212", "r239", "r469", "r509", "r515", "r518", "r519", "r520", "r521", "r522", "r523", "r526", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r539", "r540", "r541", "r542", "r543", "r545", "r547", "r548", "r551", "r552", "r553", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r565", "r615" ], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.ufpt.com/20230630/role/statement-item-5-other-information-", "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation", "http://www.ufpt.com/20230630/role/statement-note-10-leases", "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables", "http://www.ufpt.com/20230630/role/statement-note-8-inventories", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r210", "r211", "r212", "r239", "r469", "r509", "r515", "r518", "r519", "r520", "r521", "r522", "r523", "r526", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r539", "r540", "r541", "r542", "r543", "r545", "r547", "r548", "r551", "r552", "r553", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r565", "r615" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-cash-flows-", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.ufpt.com/20230630/role/statement-item-5-other-information-", "http://www.ufpt.com/20230630/role/statement-note-1-basis-of-presentation", "http://www.ufpt.com/20230630/role/statement-note-10-leases", "http://www.ufpt.com/20230630/role/statement-note-10-leases-aggregate-future-lease-payments-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-rightofuse-assets-and-lease-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-details-textual", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-details-textual", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-net-sales-by-market-details", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-changes-in-carrying-amount-of-goodwill-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-definitelived-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-details-textual", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-future-amortization-of-intangible-assets-details", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-other-longterm-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax", "http://www.ufpt.com/20230630/role/statement-note-15-income-tax-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-longterm-debt-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-schedule-of-maturity-details", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisition-pro-forma-information-unaudited-details", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-details-textual", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-assets-acquires-and-liabilities-assumed-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-contract-assets-and-liabilities-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-details-textual", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-revenue-disaggregated-by-the-major-types-of-goods-and-services-sold-details", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-receivables-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-summary-of-allowance-for-doubtful-accounts-details", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-financial-assets-measured-at-fair-value-on-a-recurring-basis-details", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-blackscholes-option-pricing-model-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-compensation-cost-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-details-textual", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-restricted-stock-unit-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables", "http://www.ufpt.com/20230630/role/statement-note-8-inventories", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-summary-of-inventory-details", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-property-plant-and-equipment-details", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "auth_ref": [ "r20", "r97", "r98", "r128", "r510", "r565", "r573" ], "lang": { "en-us": { "role": { "documentation": "Number of new stock issued during the period.", "label": "Issuance of common stock (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesNewIssues", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r20", "r97", "r98", "r128" ], "lang": { "en-us": { "role": { "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).", "label": "Share-based compensation (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "auth_ref": [ "r20", "r97", "r98", "r128", "r368" ], "lang": { "en-us": { "role": { "documentation": "Number of share options (or share units) exercised during the current period.", "label": "Exercise of stock options net of shares presented for exercise (in shares)", "negatedTerseLabel": "Exercised, shares under options (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-summary-of-stock-option-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "auth_ref": [ "r20", "r97", "r98", "r128", "r514", "r565", "r573", "r621" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.", "label": "Issuance of common stock" } } }, "localname": "StockIssuedDuringPeriodValueNewIssues", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r69", "r97", "r98", "r128" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Share-based compensation" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r98", "r101", "r102", "r120", "r528", "r544", "r566", "r567", "r609", "r622", "r643", "r652", "r677", "r698" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.", "label": "us-gaap_StockholdersEquity", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders\u2019 equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash paid for:" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-schedule-of-supplemental-cash-flow-information-details" ], "xbrltype": "stringItemType" }, "us-gaap_TableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "us-gaap_TableTextBlock", "terseLabel": "Notes Tables" } } }, "localname": "TableTextBlock", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-tables", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-tables", "http://www.ufpt.com/20230630/role/statement-note-12-segment-reporting-tables", "http://www.ufpt.com/20230630/role/statement-note-13-goodwill-and-other-intangible-assets-tables", "http://www.ufpt.com/20230630/role/statement-note-14-other-longterm-liabilities-tables", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-tables", "http://www.ufpt.com/20230630/role/statement-note-2-acquisitions-and-divestiture-tables", "http://www.ufpt.com/20230630/role/statement-note-3-revenue-recognition-tables", "http://www.ufpt.com/20230630/role/statement-note-4-supplemental-cash-flow-information-tables", "http://www.ufpt.com/20230630/role/statement-note-5-receivables-and-allowance-for-credit-losses-tables", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-tables", "http://www.ufpt.com/20230630/role/statement-note-7-sharebased-compensation-tables", "http://www.ufpt.com/20230630/role/statement-note-8-inventories-tables", "http://www.ufpt.com/20230630/role/statement-note-9-property-plant-and-equipment-tables" ], "xbrltype": "stringItemType" }, "us-gaap_TreasuryStockCommonMember": { "auth_ref": [ "r65" ], "lang": { "en-us": { "role": { "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common [Member]" } } }, "localname": "TreasuryStockCommonMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonShares": { "auth_ref": [ "r65" ], "lang": { "en-us": { "role": { "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury stock, shares (in shares)" } } }, "localname": "TreasuryStockCommonShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockCommonValue": { "auth_ref": [ "r40", "r65", "r66" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "us-gaap_TreasuryStockCommonValue", "negatedLabel": "Treasury stock at cost: 29,559 shares at June 30, 2023 and December 31, 2022" } } }, "localname": "TreasuryStockCommonValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_TypeOfArrangementAxis": { "auth_ref": [ "r417" ], "lang": { "en-us": { "role": { "documentation": "Information by collaborative arrangement and arrangement other than collaborative applicable to revenue-generating activity or operations.", "label": "Collaborative Arrangement and Arrangement Other than Collaborative [Axis]" } } }, "localname": "TypeOfArrangementAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments", "http://www.ufpt.com/20230630/role/statement-note-6-fair-value-of-financial-instruments-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_VariableLeaseCost": { "auth_ref": [ "r456", "r608" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details": { "order": 4.0, "parentTag": "us-gaap_LeaseCost", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.", "label": "Variable lease cost" } } }, "localname": "VariableLeaseCost", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-10-leases-lease-cost-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness", "http://www.ufpt.com/20230630/role/statement-note-16-indebtedness-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r226", "r234" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "terseLabel": "Diluted (in shares)", "totalLabel": "Diluted weighted average common shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted average common shares outstanding:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r225", "r234" ], "calculation": { "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details": { "order": 0.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Basic weighted average common shares outstanding (in shares)", "terseLabel": "Basic (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.ufpt.com/20230630/role/statement-condensed-consolidated-statements-of-income-unaudited", "http://www.ufpt.com/20230630/role/statement-note-11-income-per-share-weighted-average-number-of-shares-used-to-compute-net-eps-details" ], "xbrltype": "sharesItemType" } }, "unitCount": 6 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-7", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(c))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r114": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "230", "URI": "https://asc.fasb.org//230/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r124": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "360", "URI": "https://asc.fasb.org//360/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r127": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org//470/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r131": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "805", "URI": "https://asc.fasb.org//805/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r133": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org//810/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(15)(1))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Subparagraph": "(d)", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "958", "URI": "https://asc.fasb.org//1943274/2147480321/958-360-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r149": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org//606/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r150": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1402", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r151": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(1)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r153": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(3)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r154": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(4)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r155": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(b)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(5)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r156": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(1)(i)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r157": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(1)(ii)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r158": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(i)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r159": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(ii)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r160": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1402", "Subparagraph": "(2)(iii)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r161": { "Name": "Regulation S-K (SK)", "Number": "229", "Publisher": "SEC", "Section": "1402", "Subsection": "Instruction 5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r162": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1406", "Subparagraph": "(1)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r163": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1406", "Subparagraph": "(2)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r164": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1406", "Subparagraph": "(3)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r165": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1406", "Subparagraph": "(4)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r166": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(a)", "Publisher": "SEC", "Section": "1406", "Subparagraph": "(5)", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1406", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "5C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r17": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(2)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(13))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(16))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(7))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r187": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(5))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479637/805-30-30-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r202": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(c))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r224": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org//260/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "2A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org//280/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "44", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-44", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(22))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481962/310-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r278": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "https://asc.fasb.org//330/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "05", "SubTopic": "10", "Topic": "340", "URI": "https://asc.fasb.org//1943274/2147482955/340-10-05-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "340", "URI": "https://asc.fasb.org//1943274/2147483032/340-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r283": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//350-30/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20,24)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(3)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r357": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org//718/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480454/718-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.3,4)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 14.F)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147479830/718-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r395": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org//740/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "30", "Subparagraph": "b", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479613/805-30-35-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.30)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)(3)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "808", "URI": "https://asc.fasb.org//1943274/2147479402/808-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(i)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iii)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iv)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(i)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(1)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bbb)(2)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(2)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(3)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(4)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(1))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(19))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(21))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(11))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column A))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column B))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column C))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column D))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column E))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column F))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(e)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(f)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(14))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(15))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(16)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(17))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(19))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(8))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(9))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(1)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Topic": "954", "URI": "https://asc.fasb.org//1943274/2147481027/954-310-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "12A", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479294/326-20-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479294/326-20-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-10", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "((a)(1),(b))", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r601": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r605": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r606": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479589/842-20-55-53", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "55", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r615": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r616": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r618": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r619": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r620": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r621": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r622": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r623": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r624": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r625": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r626": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r627": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r628": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r629": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-10", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r630": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-3", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r631": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "275", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "825", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479383/944-825-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r633": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r634": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r635": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r636": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r637": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r638": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r639": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r640": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r641": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r642": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r643": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r644": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r645": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r646": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r647": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r648": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r649": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-18", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r650": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//310-10/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r651": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r652": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r653": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r654": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r655": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r656": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r657": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r658": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r659": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r660": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r661": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r662": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r663": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r664": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r665": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r666": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r667": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r668": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r669": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r670": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r671": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r672": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r673": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r674": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r675": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r676": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r677": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r678": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r679": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r680": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r681": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r682": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r683": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r684": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r685": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r686": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r687": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r688": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r689": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r690": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r691": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(5))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r692": { "Name": "Accounting Standards Codification", "Paragraph": "2B", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r693": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r694": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r695": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r696": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(18))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r697": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(i)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r698": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r699": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-23", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "37", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479303/805-10-55-37", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-5", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "25", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479668/805-30-25-6", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-21", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r91": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org//205/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r92": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//205-20/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "5B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" } }, "version": "2.2" } ZIP 89 0001171843-23-005131-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001171843-23-005131-xbrl.zip M4$L#!!0 ( !1("5=@CZZ)U < '@Q - 97A?-34S-#(Q+FAT;>U; M6W,3-Q1^AE^A2:>0S*QC.RE#B!W/! B0EDL:TIF^RKMGO2I::='%COOK>XZT MOL1V2$(I.%,_@&.M+D='WZ?O'*W<+5PI>]T">-9[^*#KA)/0>W/Q[BT[R833 MIMN,1?BL!,=96G!CP1UM>9PVXX#=OL[&S+JQ#,V5:^2\%')\R!Y]]MIU+D0)EKV'$3O7 M)5>Q,&&A.&$6C,@[++2SXF\X9.U6Y3JLXEDFU."0M81BK=VV4!V6>F.U.63< M.]TA"ZJ[#KMBH% PY$9PY0Z9HNG+#BNY&0B%HU=N^J_1IOH.+EV#2S' IT8, M"H>6=/N]DS_?G#X_O6#[[=UVM]GO=9M5[^%WM_!91>8\4GU;=7Z,!4L^2A$[ M8**3NK[W HP3N4@Y@8N=X8IZ[)0YS3Y&P+']UA[3.7,%L(_<]+D"V_AP*6', MCE-'3_9:K;UNT_?^)VZ>=^9?WJ+WQE_P_5;O-&'GN^Q7R'.#/GO.A93CA)T9 ML"+#M6!<9>Q%(2!G)Y>0>B>&P#[DN"1@R+M_O#IC%Y 62DL]$$314Y7NXC+2 MNHUQ6;@[_-*<'R_,]G%G-L\PS2NSK"=93Z>U[%?'^Q)87YL,S-%6"[ M'*;?;<73R??:I)'(7$&.;?UKE[W)2+2W^C3]J[P1\T8M-EU]@UV1>_HUVGK."( M'P-# 2/($!["LL^>&^2\'&-YI0V25K%7V!C[;/Q^/<8ZBU/$3T,+A9^$@@WD MONO2[JTIY)YSBT!#2)5C]DGID81L $E$7HVW3..(2KL0NW ,(+@:,Z^<\8 V M<@DL5%*1@+3=CJE+R3Q!T:MJGQ;(, MC<$A)<4&$R%+A4E]B=44-D=+$%EL5(BT8-;3?[/V(S!0=T(3*(65&&4ATMA( MN (G:"O421J=^JW0-)WA-!%+Z)3^>-X-&SZM%9_V[QN?@.5"(6()_#.$)B& MT/C8S#T7*B8.%, )E4J?89_(@CDX)L@@0:)0(8B)?\1+*6<$J[%M%X9&#F,6 M@QTG5,-+K("LT@C],)P-]J3<%BR7>F0GE#,P$-89"BXY%4:[T:/]9!NB%>TG6?P6OPI*U%1D'/7/2%7FB!B)0;;< M>J#\RD Y#D3S7*0GUJ H\G!#N9LH-['S6@K\ &KR-:7F2TQX!X30$&+=3)^$ MHK^4>WO[)A2&]0&I4(\4 SOM<8D]"LQ0V"!;6 M4Z(>RYYG@S8NF BA0_- 6JZ7(N N&]C&M%^@&FH"(\6>0<44]>4LQ8=B-; @@@\AI M"VB00U&E1A4G&'K)29MQ6L&(66R)+6*D.A]@XU]]H(HHG]@>LHUFJ'35 ML+2?!+(%'L6MX$K5N=0PA B7]80J;RKDL0U1=)HBX(,!(4D<@,+@6"*=\0E4 MM$]0%4R (V5Q/Q$5JO2&M/>2M.F:DO9DR*4/JD2(ACRG _TA8M&N2,JFH?(M M5#9^79VG!8YB0U1(&[/!OO;N>@MN$P?P:6V@5#>_^:B%]2=)=-AV('H"[>E0 MYQN:W4>:96M*LY<1P&*7DMM'9;3 MNS[LR^+B3UX"L.UKFN1(7-2JA=JUX2G2*9S/TM&M\E.[=J)5!;?3*)I4+A = MLB#_P1^U-(^9%)] UH>U"_63?^VB#;G7[ISHR9J2]JO/B<+KM6Q"^60F-*1[ M\[2;:0X1YPXA\U+".;6.^W!]Q$ZCU%" 79:E< [@"ZK>UQ@'T_-,H'VADVTD M)XJH)9'&3TI])SL*?/8"S0^[AU?A&H#=V1P'W4O97-?CH&.)R10Z-EP^0:#1 M^64J .E01YC38YD1\$\4,L;D*@2-(2T,;P^:[0)IYA0PM3 M:;J6D'4RB4V058C(),:MEMSB2YPO.B1,I@X)5KZ@V 3T>%CLK'KW 6 M.?9-8MLE+_Y0]%^%?.4604\E\[8L71G[BON6-50.B#[1OH:$/-#'34O"]<8Y M/%VEU+>ZZGD=#9^0;=]ND)<(Q,/H?7;L!QXCIV<)VVOM[=](]&]L2=?WFK:Y M?$DOW>4X3\MU^N O\>K^OW7KT5R[9QY=>-]Z+@ G=(E5QW'W7NVFJ\OO&R MSB8V/O_:\;;/XO$_RN&2NW?N*H<+-MQ&#.=N,T\N,\_T<7J5^6!9*S,Q9*GD MUAYMO3W^>-$X.WY]TGA^?G+\&_T28.[IV>M7%^<+947>,'JT7$A"R\Y>O__C MW6PTK$$_;ECQ@58TZ<<.N'N&7US\ U!+ P04 " 42 E7K,'WAZ$' !X M+0 #0 &5X7S4U,S0R,BYH=&WM6EUS&[<5?;9_!4:9.O(,*5%2/7%$BC-R M+#MJG42UE9F^@KMW2=188 U@2;&_ON<"RP^1E"TYK4--^6#1B[T +B[.P;G MHC<*I>[W1B3S_M,GO:""IO[/U[^\$Q>Y"M;U#E,1WI44I,A&TGD*9WMU*-HO M]_JIU,B2SO8*ZTH9VCD%RH*R9D]DU@0RL ZDJ1I90V?&[O6?]@Y3A[V!S:?" MAZF.U4UH%[)4>GHJGGVJ;>A>JY*\^)4FXKTMI4F%+1&+6\*34T57Q'I>_9M. MQ5&G"EU1R3Q79G@J.LJ(SL&1,EV1UVNV&CF+!6#HE33@5 MAH>ONZ*4;J@,>J_"_%_[B.T#W82VU&J(MTX-1P&>] ;]BW_^?/GJ\EJ<'!T< M]PX'_=YAU7_ZS3W\L6)WGIF!K[I_C@=K,'WW<78XM!NC:P96#.$ MSGHL@QQH$@/KQTL0:1ULR#,GWTEL]ESX])$Y6'$P>S\I0F;,CEQ+#O5 M#2\83YX^P?+H9O9C'E\F]2RZP5;1BHWRE4:/?XA^QI>;YWHM""MKW.IT?S$F M1P"@O/M72@>=ZBO+*.A#5B#>H MC#;;_[@;9-W5(>+7\43AEU&P@]PWG=KC+87<*^D!-$"JG(J/QDXTY4.L:1%Y M#=YRBQZ-#3%?D4@:I)F*V@17$WR4@4I,"P-18O$$4GD-+"0K"M; 4D4)BG9K M!H8R\EZZ*9N4\B-%;9JWZ5&6PQETJ3D?F(E7IEQ6ES SJ Y/@"PQ&:EL)'S- M?Q;U)^2H:80'4"JOD5D!:6*BP@@#]!6TD7OG=BNX9G,,$UA"4 ;3&(:$YO0W M161'K:VBULECHQ:)8IXL+,#: J]@CM=NZ;TR:=_ ^9LRF:YSM E"+!&T!3(I MUH<*>&8J,D6U7G"M@;E?Z1ITQB8&#;?8HM8P ,$L6!"[\]&?3/J1*+2=^!G[ M' V5#XYS2\F%R6]XV5HBD9\YL^;MCCQ;19Z_;BEYKF\A[=EW+X^/?NCZAAY- M^LSKN$W)]KY_'F%X*:2C"'@ 6/$, YB"/,^V\B.NP68E9(REC)]SY3-M?8UZ M+'#.ZH3\RMF,DJ/BO=I)C&.VQ"-ZR:#K2,G*K2?(6_&@U@LHO%<0/OGBK52Y#='3@5:X0!AZ M2JEHE''#+=6>T\.X&OF82T:1LY[@4("H"2F]-A)OT(#?O M\IBUTN4S!H'32@Z45F'*6>FF;GD]B62+/$I+P2W3I5UB3!%NF@%5M:O 8Q^S MZ"P#X*,#<;\X)(/D6(/.>$,5KQ-L@KUPHBS6$U5!I7>D?92DS;:4M!=CJ>NH M2HQH*@H^SQ\#BW[#IFR>*M]#9=/CYGU:Y"@J0B%]V@T.;!WN]N ^>8"<6Q-O M=8O/G+K,O!C,-M%QV:$4"?C3Y<9W-'N,-,NWE&:O$X+7F<#GG)1 M+9_BFGKNU_/DU4CZ>1;-*A>)3GF4_QB/1IJG0JN/I)MSVQ7[UA\.T8[<6W=. M]&)+2?O5YT3Q2UL^HWQK(32L>\NT6V@.$^'!Y&L.4%)9[X;M$GFJ.AI+DUW$K+93*(*6 5$ME+>ZCDL=8GQ(B!Q,$U* ML/$#S4ZV'BVYMO6\YARI9^$@#RU G:*H@2SQ6W;#JE;*W)096STF3M^,'#:? MY%VC@U16VDX);R#VMD)C^VT,SQR6>@FAKHU?U#?[CATEJ\ MY%?/8_:5#[?G>'DX&SC>W^3%@QJXXY[= UNYS=ZEVWY?/]FKJ-GK[U^ELT!X MN>;O\X=PY'_DWRVRY&HL,BV]/]M[=_[ANGUU_O:B_>K]Q?G?^2;PTMNKMV^N MWZ^4C8JVLY/U0B:8N'K[Z^^_+'J#!5]NWO #+P[YLC,P%6]<_P=02P,$% M @ %$@)5^>$Q&'V! BQD T !E>%\U-3,T,C,N:'1M[5EM4^)($/ZL MOZ*+JW.A"B3 N:L$J?)]W7-W4;'JODZ2#IF[,!-G)B+[ZZ\G"8C@4N*5NG7% M!XD],_TR_?1T]R2=R SC;B="%G0W-SJ&FQB[G_M?+^ DX$:J3CT?HKDA&@9^ MQ)1&LU]*35C;+77S4<&&N%\*I1HR4PO0H&^X%"7PI3 H:+7!&)-("MP7LM3= M[-1SA1U/!F/09AQG[,+40C;D\;@-6[>I-&Z?#U'#-QS!E1PRD0]6(1NN@D;% M0QOS^>%Y M'UK-[4:G[G4[]:2[^9H6SMKQ=ZH-#\=+S"YUMX2G$_?5S7J>XWP**%2YYXY0 MD?'<9S;LOV,8S;,T<=A774#*",6ZP3A=KZN&I7L#BF7$/PT@2,>F*@-N\[O MDT1?RWHLRN3+3HFU-I%6!RD W(*[.6GDAKA M8"EK)^W6=1VNMN$+AJ&BDG#(.!W*3CVUFJAW30?>+,K\1/72"GA"QL/T@-$]5>JL.&WR%\S_NK*O2H/G";?:M9M3BF MFN[GU_-5%)5[BE/Q2:CZ+.BHS,FB2WJ6T]^JV*\+2%% I& QM83;<,&,C2;\ M90[*FE@3:^)G%>1QOGUNZ7CBM*]8.VS%.)W>*HIL_O+"L"#JO0O#N^EXW==^ MI>X!3%[D4)TAK\?%=4\CC.@6;E"0551/\LM[<9,/P!L_>AT5,0T>TMI$R3MN MWR88^9/705GK,*(@(P:25UQI2=Z2Y6&J!-=1+G;N'8&=G[XGH#OJD&MMS9(* M.%E,QHV;>;KP_::(7]WO'$@ZRHV^\?U&UF'V'^ M!5!+ P04 " 42 E7?_3TFWT5 #&$@$ $0 '5F<'0M,C R,S V,S N M>'-D[5WK;]LZEO^^P/X/6G_9+C!L7DU[6[1WD.?= $T3-.G.S*'AX2%&?__HT]9T')A47P9?!P=O] M@<,"5W@\&'\9_+@C)W=G5U<#1X4T\*@O O9E$(C!7W__S__X_%^$_,$")FG( M/&?X[-Q/HL!C\EQ,F?/WT^]?'>+L?_CT[OCVVOEQ?^8<[A\>D?W?\!_Y_?.3 M\CXI=\*FU $. O4)'GP93,)P]FEO[_'Q\>WCT5LAQWN'^_L'>W^__GJGZPZ2 MRJZ(@E ^9PV>AM)_JYC[=BP>]I+"/228-8BD!+GJ6B2EA28>X]6UH:!8,90D M?)XQ5>!?-T$)H'@/B['-/MD_((<':4OVY$ZJ:6!)@8C/@Y_5_8.&CO:P>$@5 M2ZL'E+NJNFM=5.A;<;>Z*A04*\HPJSBB:JCIP\-RI9(Z\E7CHF*#<"9KZ$-) MH6HTFH4%+>"#MZZ8ZEK[[X_VLYJ*C"F=+?*0%!2[5743TG(UHY ,W M4?!G1'T^XLR#,>RS*0O"0H5<<4CEF(7?Z)2I&759@TIAL#N.'K%\.A,R=(+* MAG62Q20SD?-.+Q8[[::#[ NNSG" IPUP9!]W5/=\0C#3 M=UI?_^J.KPXJ7T19!WW7S%HK&!V?M..A.9BI8Z>II?Y;=?2PQ9#-S,7FVV1_ MK: - /+'/2E\MA>P,8;!9F/!E[+0"@?$1YSJ#MZ7^:!!($+=E7Z6/IW-># 2 MR2-XB''!IS0&_,Y&CHX4/E'I(IWE\<3>3(H9DR$'@.?"2-W!1+(11!80$9 T M&OBG3X=O(5A)JRP0*,[I6DYHPORO<_;2MFC_+P,%RO99(O6+B^-2OZTXT,2- M?&V5#17*8Z.V0D$3'O -EFDF65N9H(F"*+B3I;"#>ZC@<%B70D@:ZH":>,*- M] ]8#Q/XGX?/!,>BG&HJ P?;_?A^M3RDCMDS[S7C+>5N;JUXX6"R-/Q]?W\? MUN3G":W\SY/ =J3O;S7HG6 AN18MY-\+O^71H52>.DQK*&1>29MRM; MM[IE\C0UIYF571%X+(".\)<2/O>TGQY27R]-U(2Q4)%X!@D)H)@+CT0!C3RN M9X%.(%B1J"V,' P[E*FX/=9RA;^RMAR3F.VG#O-EO/F+.;+N=5\.3]2OOZG M1U$W@Y(9Q><3%G)0BOHEH"KS8 MCAY8QYKRY+3#:@ZYL\*R"(F($/QF:3X7"_3D1OL>D(NS/"$.3%\'->LA96Q9EZH)&?GB49%U BA/QA9L+%4D&?WP#J@[&R*=(%\U[FZ.[ MXP8^)-0%;Z@T:TJO9CW^P!2L+$%[J]BYH6=;YOY0:6X,5T]RY!T@#]4R\CMN M]2,BV0,+(@;_NV(@H MTW^L-+V. 7-H8QR+C#W3HL]C_4A\TI+,( MH"/B2@;!+P'-*M8U6=&!D"5D'.Q7(N-8.X6,&^WW3U)N'.#&.=/<.%\U-SL. MD?=D1+DD#]0'SPT!&7 )>N(T/M0A=:IY)6B8$; %B8-*2&! > E<./^'7&#\ M=YER =XBXV+'H?"!J F5#%6):[3I#!9)*\?Z]9W:,OEAI MG/2.V_DW&'D0,X5"\M6\?K$C6_8\JK0G!H!7K<)^;\XMTA?3]\7*?T=-_O!/O$973%6FW=BRYC' MU?D6#,^^:DJ[;K:#=$,%D!W/ARL9L*([6Z:L29T=:.^K=V%NF8PGUETWZB%1 M;*S_E@P/GO%@O-*JNKI#6X:M3I+IX.DNI@J+IH3JKEOVB(R%\!ZY[^O93X03 M&&<<* 9C#DM*0F'=&';>!VE'PY;]JQ-H.MCZ(V%$3[4WR B,]901YT0SLNN0 M>)=8R!?!.&1R2GQ.A]SGX8HA]/*.;1F_.H6F@[#8WE^!.D'RSM/NVZ"=^#YCTV#)D7,+7:0"UU9CMKB$Y_$^.LPERY1V,^OYLF70A(74%)'5:.IU<^_T)DPUB<)>8P%_? M#G1*P);AJS-731O1SIM[S<8.GT"JWT"V@(&E_=HR?74^JV9_NK=XBWWDU0'0 MAHPM/%2GQ,PVK7MX=-A4MH"33O1L :8Z\=9R+[M'3HL]9PN(:47'%E*J,WF& M6]P]0AJVI2V@HK%O6TBHSNDMV_GNS5^Q6]9D_]J" MJWKY&>W<>"RGWP4CL M*8RHO\9=PC(E6WCH]MZJ\^8\YL>YC_GI<5*T7CQ]ZV/G?3B41U/FI5:U MB9N6E&WAJ#H-N( CDH82)PF#&EGYB>4D9C!#6(^LG'TQ[4/T'EUAWW!^[9)M M0!D3M(6CZCQC"4=QYLG!2ZII<=,R?[-3#Z E1P\LSEQF!"P!Y%UU,K+VD$,_ M3QG8*GWF<47'8YE<+CM\)K (%/Z+Y%\IP"W%W'=&D\KBLD'[L)3)7PKGF?] MS-D"876VM Z$\Z?G>1GPTQ<@@W.-,CAH,7TK#*[$XVGQ+I'!N0,9>G^V%"6N M"$))W3 +@$IQS]K@:4K8%O2JT[CUT#M+^$L#KW*\U<.JQ0$MO*3;BWQ]SL*@ MN@70K9,M6Y"LSC4;GC.#2@GW^H(\@X-I/6 [G!3+U[4 R]6)VP)?=4Z[[9FU M8NT>8EVL#.OV*97/Z(2*U3P1#<-1Y,/"4G^?YA<@L -OM@!:G6!O#]"[6 3T MDL6*YXD(L$*.1>CQV^IHI,6E<#>"MI!6G=LW/I39+Y4[V'+^-(G_IXRB]L$= MA84. D+18T52XFY_?/>H!3?X@ES:@NEJ9X=)[GFRI+E.A'%H6.@B<"CZV%B8 MY-K5WC4VG0^VZ [-B=C"5I?3R+W?,S1:Z0\5VG!@7_G7RN0C*E;PM5Q]1Y% ZYR\;W^3(!SH[F$ MJ#[FLH=9HZ&'/G5_*GISFVD/";> M[ =0[GW9\G? 6M"CP_ UKZ6%%F!C@[PM/'6\ MJW6Q_"_EE]1ZK)7>+)-\/ G%"'HN[&ECH>TM]>Y$;>&J\=I8G,N0-W27/Q0K M;*-CA7XS?2F88@O:2A8L[=<6)&J.R!<@$9N^7_U7VB8[XD1&D3Z\'AMK1I\+ M^Q]V@&!*S!8Z:NZP+:#C).7)N=0\)7"Y37CJ(;/DK5>+Z6>3[FW!HN9JV^JW M:_N, A82-K/C7=;" MD"VHU5RD6PDUXOPMX=LYB?EVOFF^=9I1\^W\P.5[*/0*'OAVOK'0N;B]Z[W4 MLM>U;;HID_XM@>=]S8V]->^%]XZJV5(XS!7%E._PF4RI_,GLA+IM:=E"2,U- M(-4((=I;W"%+>)S]6K/4>XZ6K_G;="8=2=I"3\TM(^97#/0NIY,]W0D\ +_ M ^)2*9_16] I'@=,WXO17=AP3.OAR!8 :RX^,08@<.&<)X\Z)9CQ] M/4=WTCNYMAY'\\]\_@!QAGG9\:*+4RN>N\*M$XX)IKE)7ZS1Z,9!))D M$3@D"&3^'>^KZ@VQ7PC+UCS9PF=-$KP%/I,\UTF.]7A+K\=IESN$EA39P..J MM&WAKB;3WG3W4,/-1#W"8BOGO_AC=8FQM&-;V*C)LQ<_+=0O%QINC[)I]H:N M;1F^)I.^>$-5;_JE]LD\.#ZS,FT8$; %@YHL]P(,2&X:.(?'O?^O,5?^)?$I MA7#-TCG%5G0LH>-#31J[ AWYM\NO$W9V B.?]YZ4]XG.9OCJOWZ6/ G ;#23 M]3,^8_$[]PX=*GU9Q)=!*",VT+!"%/SSQ'N@07C-/ XZN&:X@S1P CIE7P;5 M1;!DP!=;TXY4--17QR'9/Z2(9E\&:%S^";^$-G#P IVVD8%*H&749+*=9H%A)D+K2S90E"L54A/RA M+,7B\XWD_]07 OD;WTU@S8CN^Y0&/__!F>_A"'[Z#DZF*%FK%K]2YKF,D>+H MALZ ;Q[H^B=CR72M>^ _DZRY7A=YXBZBN"N/FJZ]"Z(=TUFB"^ &(S;8 S##SS8 G[ M4NHOD]Q1S<>Y@WO\F/)+:#U/;BN=452X=#.MNAYP-HFV$- 7N M4:R_\7!R%BE8,C"IAQ!P*G%DG;/X_TLA?P0P]'SF)?<+SD=L7E8;G?V*H=M9 M6ZE'>LZ$C-B]@)J*>TRFOHWA=NVE%-.TF5JFM!7Z_"63R^K*6X#!>827M=QJ M(D:J:NIAXQ13[U$2T5)Q%7C#[RQ.-ZD)GZF2AS&NOI'^LVY.V!;_G\;3"?Y* M0M04;H3O/^=J)A3U-<5L78S95$ 2!W:]FUGB;0JNYW]UHN5"N5(\9H+:Z6M; M@K9SX>IKJ&"H78!\Z*BSBTDSE2ROTUU4?*$^&%L'\L5TYHMGQH#?;Z#,Y*\X MZ-1W0Q2A;5Y](X?M13"&)0A#36*P">/3%_I%X)*4C=4V8BC'5Z$QO1;*9L1[ M<9Y&E:=.L MZD98-XT"KX+$B0;CHMU2F4PJ;D\<=!5X$?HZZM](?="G:,#ZXHUT.%>P#H0% MCXM'%-*K".XE]1A* ]@[E;"J+TO8ILEF0%6IB,GOD<\.]H?'!]<41A-8"#AL! MR_B-['*6L)A/U!^Z6\!HIY:_&+ YL8%;ELT%P'5^VE?9M)">AZA3P8J];(DZ MV@J^!2*V" @[M=R:P!#/ANE7)N+Q6_)B-84;Z9HKDR5;D2FY%K['8 @!B^D& MT/7E?9JMPB0)]2_TH;*KX$H\TI*(75MOQ 2$$R->C!?RPJ&.Y":0;)S-Y\]4 M["X-MV94U@A7&IZ-M382[7@0\5YD=Y3?I8NYJ^2;RZ/ON;C9J2_+K>P^U1;VIUO#JO6,9/6#7,3 ML)3!HG^H*M@(I]\<,I\5G7V;!IOFY%M(O3C+M6RS?;+7G81ITV##-D?F0F/R MK3()H$LR41NK;:Q9;^/C]_IS(C>CFG@DE=.T\J9)6^MX42#NQ3M99Q/.1A=/ MS(WP9/G-:,3=LCLVK[X13CK9FM7G*"K.%V1[F3@,X1^>F[QETL6W,<8LE7G5 M3E;3Q"SNROJ,JWW0S>A'ZH.*=JXMW0BSIJ_[W(S2C?K5NUG9UVLB M]BT+?'"/0UCQ1T0EQ0OX2PY_:8V-1&LU3#<*G_6\"^''ZX)KZDYXP&3)C2RK ML)D2/8HLPU 2I:ID(V68O_.\^JW7L>Q6>]RX;)J!=%4WPQNKIK+Q-FJA]<<6 MC%74ON=MU%^H/Y_<0BU9@RV2MN(Z:E.YES7=;@U8N"&\@_)L4-TBO;>^\+A) MI>T[W')MF0[4I6VW2 =KNJ^V27WK(OOZ-&]\#ZLEE9O3>WVZ;G_+J"6E=R#\ M^K1OZGK;=K=%FEKYEM$FW:U.X+5HTQ1M9IULD5;,[AUL4HMA+]NKE^7W[[54 M3T-GVZLETU%4UVQ[)#\D%.\W4?J 'Y,E>C71 F?ORY*HH!&'L?EIBE0NO:Z MI7J+DUH>A)::7?/$B&DOVZN7).<7WZ&3)/]R,PV-K]'I!JPNW6^/)H]@":[/ M=<#_>H=>CQHW.>!1R*9V")E6[7W;]9@^\[C*-C@\S/Q 5 1SV;]$LI63+LAC M7:CX4 7,?,(W!^U+<+#M]C!TF V-MT<+[XB*9K.X.?6)2]6$C'SQ6)@B\_&5 M0753/*Z7]BNS@2$PV_6U/3HZQH'&^(/F7'L@ZH-8>-(38SH2'_:$A9+2NWVY MNJ9HM$'AM>H3HIKNQ,!KM8:A*^C8Z?9H M[3T942[) YXQ1V2,TG>0"![PEOK>(95[F@234T;QFGQ01UCH(" 4-19)E((, MJ>+F:'Y15EZ;A0SQW+*S[='2AWBS'+_FX.F-\O3()!GZU/T)$9# $2QF21:# MNXB*J?"8^9:@'1JO0:>E/UH MU@*!UZ#-7# 3"YN,.HOZ;$'B-6C4< 8QZ&![M/$;3'L/#,^?\V* G#XVQU&K MKK950X88J6FT/5)_Q'T.?4L:F?D4GF+DS_Z,N+ZQ<7FA*6#LT'@U.C6$EFDO M+Z:7^!-8F&&;4OCS_P%02P,$% @ %$@)5YW'9$14$@ 7BMOW#82_W[ _0\^WV?%=M*T39"T6+\" M TYL.$[;^U3($G>MJU;<(R4_^M' X_ M_/HPS7?N".,9+3[N'KS:W]TA14+3K)A\W/WV-1I]/3H[V]WA95RD<4X+\G&W MH+N__O+/?WSX5Q1](@5A<4G2G9O'G>O;JD@).Z93LO/'X=7Y3K2S_]/[']Y> M?M[Y=GVT\WK_]9MH_V?Y+_KE0YX5?[V7_]W$G.P((@JN_ORX>UN6L_=[>_?W M]Z\>;EC^BK+)WNO]_3=[\]:[37/Y;5HN.JPV?KM7?[EHNC;T_1O5]N#=NW=[ MZMM%4YZU-12#'NS]\?G\:W)+IG&4%9(CB:2%9^^Y^O"<)G&IV&B%L*-M(?^* MYLTB^5%T\#IZ<_#J@:>[@NL[.S7K&,W)%1GOR)_?KLZ>/+,:S\I7"9WN29;O M__AF?T^VVA,4EV1*BC(J:$FB@S?1A-+T/LOS2$QN1,M;P@0P@6N2W>0DBCDG M)8_&55DQ\=>4LC+[6R&,Z+BE84K*.,NY8(FB\):1\<==24LTIT."^'=@,LK' MF5BS/)O..9@K%'\I+//U&SHV:F^>#/TZS(2G*>W9'T;$'82-$U M6B'\Y&%&"DY&XY*P_Y"8G8H.2B<3CA5C9,22'Y)-;LO&,J_'B5FR9J4\-2*;%GN\FDYK&T.0-YWW'S,Z=::=]BNU M!(4@#AR\% ZLR2\H!UZ_ X8##HH&]Z\ #:833HH)WYX 9P V'-0=KQ] >S0 M*'HH"WY\*2QXKO.7#/BPU^:S#Q(/2GXXI^>!&/(.B1)-54 M,HNDJRO7P]8U#X3%T/W$*/<(8CSI%A1+BT0Z>4CR2D:Q/S4+4X/'I2M. ]X) M 4P^M\RDA\$>;1-DT*L95!^]CN+D?U7&,SDZGXM(]1DC7,G9/(MOLEPT(.K[ M:BJDJI_ZZ>=A8;1-G[3"E,LZ^^0G?QY6/"L(YT=T>I,5"MT52>BDR/X6"RP5 M!&=C0@$GG)!:^@Y0N=%SQIL>F M661\:% UUX+J2+P!62KW8,4?URPN^)@P@>1 H^Y\AL"*\4):F3T ?3K.T&B] MU^E1)< 49=U288*S9@,/?1E\%*.0[$[VU!G$(1^]M3Q=6ELAV-CRM"WFW)UH M3]EC$+X]>];6B,L/+Q,H\%IB(]$6UGTAX/ MP%'KLX-R]2CFMW-R3X5+.EHZ(AI> 'H$16 )AW1Q #K3=AD_RIGEU[3AV'PA M$6-("MH-9_C&RR*GONA1A7&Z0@>_6YCV6KN"[NC80%FQT:4?.HIA9E_?]A** MW(87PF*81X3B_7XA' <:7"CR-EX(RVU!%!29(2^$U]K8 (I\DR&8/$"\'$5B MRX +NMW+@G+EIQ?*E<"!F+#)1?M1+M\+'L63"2,3\>7\+)#Z/)HU;IQO^I#O M^($2A+J1UVF7]E2LI2(A2BS-%\KC-3TDEW&6+C-36TXK^/7N8<_T7+KOY&*F M7+IBXDFZ_RBA$Y'6.3R/:AQ7AJ,4H&ZHL,!/BGD-@PJK_0R04W=TV"SG?-SZ MXT-G.LOCTAL/,L?CB9X#!<5K%/%V&>K:'24VH$SM.AQ*[!89ZSL,6JPFF>L] M#EZT6AGL.0H^I"XRN?N .'< P98L[4\_H=BCV!1^JQ1'L5^P0?26PU0H3EIN M!K3_(;I QRHW MO_='&@TY-PU%UB+BCVMGU-:]J_HL,DY#?.CZT2^B&X@5X) M!&,";J40B@VXE807%_J("1IWOV=(DK#>]0L#GFFD9$4; ?./L8GS) MLB+)9G%^5D!#8GV,B9<+UH!1I\&0X]:'CCH,A16S4Q2IIV%QQI):Y13=%'I4 M#D9_R&W"#I4GT2=L_"Y#[VA-OL%F#<*$BI>KX"25OW&:9ZDL/A'=Q+D,?D3\ MELBR!DT"4R3LVXRF457$52KXD\*MPWZ>LW%3L4\R.^4++5R)49&N1J+XPJMH M\G7;0+61_YC(1SH_F]?Z;)!M2X,&YA>WG0X@LI8=2;NH3&P"J9YRV$#;F.'PBW C"W'X+ZE816$/7Z]J&IGQ=1 M4@FX1W0Z8^16B/7LCM0JUM(Z+.6FL_!#RDSU:,MJ;VL3_@!XDD.TZSB# MHY7G)8VR%=9I$!P+XV>MH*\&@[[#L/2OV$$.(-I[?2_+T3P<0775#6!JCN[K METE;D[ !\.6RU,6RUUL,1:&P I1:O:5Y2AB7!DZIJUD%[384%K,.1N)KK88Z M+03K6PY&L=40,#<.2K=R0AOY92/;V#8\U:N:#42ZL4/88E"L4=-6H][0,C3% M,^'>-Q<:F-])8]O 5&OJ?>@U(Z1+4 Q7,GFD(.E)S IA6:P6\Q;&7I9D.B3P MCD'Q@#4I$MUYS4C,*_:HR*E];-,+:VN.WO:\'0K]A+N%6E_-US]=WSO3!LN MEU@!NQY94@ZN+? M.,_IO3HP-J8L2H1NSLHHI_(VI"=M_6HL]/:\,(47>B8W4#6&]6U&=8^5ZS&D MMDYA#S3,>7U*V3&M;LIQE:^3:8'E,T;@U(O%JK&>%3.VQ;GI;R;9N#FN7X > MRFYSY@D9:V9^<>^%7;WRG[ MZZRX9#0AW V0O2=.'=2ZEMH2F( SALG7 F.#3AXF1PL,#BK?@NK1=]&LR<2* M9C(52SD09)Z,9?[23\'V^,0PFK=W@L.Y6,OPYTPX?IEBB/@])^H]*=+1E+(R M^[O.C'*\_[OOX7'DPQNOH 9UPH%CLP3V&@R)6AX7XV_-\@"@T/0(>]RUO0"X>47!.F' 83^]"^TW(!K8 MR@+U06:&^LE;Z@4:1?BF,V"P_$"1\N!GMVCGMY\L[N$F&((8KJVW:(9;Q*E] MDE&G3/>!V\FB">L[_A!1F0T7Y;28E(1-GSA&AJ\\7'A?(D^R5VDX.I5PL M,FN]5,FGHPDCBL[FWA>@D^8]2!^>FC9?6WW3ZI_!N@2UUPXKGLD[6H[H]$:\ MU)*/BURO4OS&LU2)BI6#!5;+M))3 M1?G1K?SUK!A-93K9Q=@F5PXZZYI>GAZ\]/2SVD)7A)6E MNB_CK$CD,0-R3.J?XN^ZEL?)0Z)X<"66TLEX3!)M >)!B!BVJ*Q*DQ<_CU2Z MM*V\KZU;8"SV/3\M'GC7H)CJI7$Q7ETN%T6GA;E8@L<9GU$>YY\8K6:BA_@[ M4<*@(FGC)0N)H.$8'L(&VSM8W*XTO[$3L'N@[1.V '.<%?* W$51LUI9>!=C M8T5O4)_ 69+/9>NSRB;:'$E@/R1HEOGFSH#6NPZ/Z5F5%A=,FJX#8S(6: '# M XTR,-(5==^\*BI_<^5CC[7J,^C@?%@<07" N=9G8!3*H5V&PTW"WZTS*EP^ MHL8ZPL (F_*74V2(]\!>KES&'X((P)51Z\#45AH6TM&0M $&=0/+U-F;D4$C$)R6ES SP M'FX0[-=TE AO6Y#5! Y)??Q&^>7U-ZD%K\L0PV)T/<;A/D#H PX)(2D_971Z M+CDO>*Y";3HXMO:#4?\USHF\F=IQ>MQ'& ZA+#)R,5-!JI,'PI*,ZU\L:+_ M=0Z6=XA#5INU_7#4M]RA;B*^[#Z..=@EUH3K1 MU#=X;5#!8_=]>U"[>ZR82MSUOP9\XV>8*N%UXPI$$F*J'MH-K=ON*Q1WB*L" MNN$>).$!RKX0%Q3T+3J <4XH"WY&SP)#. 8*\AUZD.[)#& ;:0LL1(=]:C#L MK;0-[3LT8/PAT[NF#D6^C06C;* >#QV_W==I&]SB*%?SM-^WEK);X M\(Q>;H-S[,L"<(@:4Z9Z1Q[X1DE1G$KTW[75L, 0BMR&A0]$# R^;D-$R >Q M-F+K$?/!"KC'_5:/F ]6KCCDU6Y![,=#O@$VC#R"/UBGNY\]=TR:;J#S)2L\ MQ9;%C^FHY/"SXYO_A,F@164UV':1K4?4:[-7W8? &E-B>\G@AU/!*_?\?;\?K?G MQW?M/0(CX.+IJNRYO(J*L+LL(?RK,%^U &P=!CHUV!);LB7PN74.BTN601;T MC+7Y;2TM0I\ :?8LI=M7OY^5>$679O0A&5-&5A("3AY*%@L+18@!]G@FU("J M9"&#XS07I$W.BI(P83%H$ =XX@ <%'0VR4*'I"#Z^;:T#DQYS;:&%"W%K:V^ MGX?05^FTTFIH&;Y"4XLR.Q7O7S8IZC*#R>.UT.@\3IK-?O57XZND_ZUXV=1- M5^KO4B8"B"]*X3#<5*7<'[VFE[&MZ%-H&E!P>?4BV?[XYCAJ>$X(V4V?KG^S M ()U"IP'?D>*BLP5V/-=X84#+%,CQ+]4;TEV&"EL]CA1FO:34% ZHT")/.-6>"@J( J.;/'RN> MK-<@U?M@?-(Z:9@"N5 L'MXRJIU=($X?G8-*7H7PDRG0S<.T>1:8+R[6)R;1 M%II--H\6T^YX>ZB #A"C0F4U -EB"5YAFNB^?.3G\F"8< 4FSD)V0 !<\PI6 M8-)&CGP G1(*<:'#P7S35DBTB,OLIJCF%4FC^$Y(N0F)BFIZ([ZEX[H!CRJY M#US22!;OKL0H!2DC,O.^Y6&3- 2Z^F'S$(+=+I\P!2S.Q9*>TD)EO/&G+^,R M"Z[)F%MU"_4;'CT-'#3>]7LSBZ-Z$K^H.;P8'V>YF+&TQG!1E6(]%#*LHP'O M.0H&I&O$B>G)$C>\'O!330*:^ M8> "3&(ZY8$B&[WZAD'I_2UFF930-G*U[7 J^'4R*9SUF/2S$8B76,$4OP2C MZR5P'6*#QHC()J,\MF"& 6*1!@ +KOE"_GEPZ8A"144H0*(&VK?OT"H"3+ M-G$E"8(R(JH[+0D SP&!@^]<\8__?%SE[^XAH0@7__SF_=^^^^8=+%*?;D]???ANP_?)]_]PO]+_N,? M.2J^_IW_WQV@\!TCHJ#BXS^_69;E^N_??OOP\/"WQSN2_PV3Q;_9N6^PV'C'[^M?]PW?37TP_>B[?M??_WU6_'KOBE%30W9H.^__>]/ MES?I$JY @@H^(RFGA:*_4_'E)4Y!*:91R\([:0O^*=DU2_A7R?L/R??O__9( MLV_8K+][5T\=("G!.;R&\W?;/[]<3U_/!2K*;S.T^G;;YEN0YXQD,<*2P+F4 MU-T$<@I^Y,_^WP<]R\V:+0.*5NLZ(RO *H2%9P=0>)(WF-8W1.*%K! M@N^4I'Z<*ZV28;HF=\G&(VEU!Y/]$QTI5HS4XQS#.:CRLOTD/Q]'2O".VI>D M\F=5\W7YMQ2OON52[+N?OO_N6T$L$P(E9,\I$\3^37Y,<+F$A$F'.28K(0R2 MY^3S<9+=&().BR&DE#,.48%XVTOV<=N:$]@Q#S4!\+&$3-!OQ=&.AARGKUX4 MW;UH"M._+?#]MQE$XNG\#S$-]:N"Z-_G18G*S=FS_9"#.YC_\QO9SS4U.9>Z MF&SGPS\USV9@@"^2TD*WK+5L0)&^?K"XKL.SI/WAS0.R$+*IHL %C7,PCSDNZ^>9K* M[1?_/D,TS3&M"-S3,;FC)0%I^9(1\QY>.;C9;5VV[>&4_?ER3>@;#D/O+;C+ MH8[69XU4=#Z)OPE)WV'"0.@_OV% MCX2_LY?&R7$05$D;RNY^L+&TA00X[>=_YJGA\Q3N^F M^9QJR]'V2UR4;%&?YV)>&42!"_Z'-<<'.H;+%E-)#L^[2B\U3.0!=C]#G_C] MQ[<-&+$KV%O@$B;O?]ABQAP7"T;:BBFPX [E[&EP_Z+T^-=\K+Z!L"TE$1$? M,R*.0//?,[X1+I^6?P-]$DXL>D;H'*%SA,X1.D?H'*%S)]#9]0CRBIV_2W(( MJ#U.?MG/#R9N?FK$O\>,?R46X4M(*82S-7< HV(Q*;(+5'"?Z*58(4JCL&W? M"-X^>^K[5:XXCN!":'SW3XP-Q.[#!$A=834$5)' M2!TA=8347=J+W<\BG\CZEP05]^P3)O9!%HU]O>!FQ9,C3(XP^:AA\G2[\C?F ML-BD2X3!$09'&!QA<(3!$09W"8/-SQZ?L/?'A, 4HGL^WU187=DKQ _^Y@*I[&]P.86E$58'6'U4 3B$8AW"<0[.)1\(O0?$EJMU_5Z 'F2 KI,Y@RL M.E;%L!_3"R)WH"@B\8C$%0CIE"VA"[:";@[6U=/&EL=3.W:/6D;$VQ%O1[P= M\7;$VQ%O'_+F=I)Z31I,[@!%-,'S9,THXA26KXK[Z5,(U:/X22@TH2$"YPB< MCQIGZ5P?;8C:O\SL0R/<"V*861T^/B4 \ O$( MQ",0CT \ O%."W?T>EYY NP93BOQA\@0%(OST$9LCMD-!^H;MEN1T0MRG[#' M9YR$BQPL&C!IX^\]HN13+HD(!*WF^RW[NDYJ*$,X[6_X@_Q<$Y+S(SMC+ M:Z),T[1'*L^VJZA^]A4D"&<7[+LF'4/;UAN=?([,J'S5T@.-TZ==*,/&ILW] M4MN$C$V:>J"R7FWR+:1LYX&^_UL!4D*2;Z[A&I.7^JY!2P\TWA+ (!U_>UHB M94U]4,D>H:+LX.?>[4"3+&/PAF[_X;OSO=0HI&CKBTY^PLW(+7Z0FZZD+7W1 M>(49A,G_'UI+3FE]8U^4"@@[(U<$WZ/ZAB$EK9+FO5-[RC8% ?F4P;O'_P,W M4C(E[?JG#Z]6N+@I&>Z_60(V4[.J%+=8H:()-)IWZI_R&I;5$I ]F+_A1LAA MTCP,FW58U'BTH->//5]!LF"OYB/!#^62+;(U*.0[1MFZ=UHO4 X_5X1GG4&/7R0#O#A" M MT3UDR!5L98F":%7SWJF]A@O$S45%^1FLY%/;W*QWZFZ6,,]UF[NI4?^4K4"> MGU24@4,J/T@:6_5.VRUXG&;X6E8VZO:R)!ZK.'],E*!90(D-4S7JDCL=V<_2V6=WAO(&L MQM\'\Q"^&0^:D1TJ^M%VL39Z?HURGYHM>P;:N"%O'P+E307[ M#%G[/CC6%,XL0YY^"(XG,[^3(7L_!L>>H;_*D+^? N=/XNDRY.[G8+E[;? W M9.F78%E2NH ,N?LU6.X4+CC30[O_2!CGU:ATC)GR%RHJD1D43?D*%9%8V/A, M60T/H5B894R9# ^R&/I:31D,#[08N6E-V0L/LYB[3$UY# ^YF+JP33D,#\C( M0^E,>0H/OJC-LZ8J>7C(16W@->4K/,2BL,.:,A4>7-';O$UY"Q6?F$1)F/(8 M*CPQ\@<^Z:Q"256 *D.\W1KP M[Y>P9)IJ;E$CMI?']IVNTR/1,2U_H*#"<:3E'XB-*T!F1&C=V6\@K^ 5)$*2 MO*#=0'-6"<%*52TS07VP/:#F1]1B6@RFEE3GUSUL/2[D\G-NFBU<>KM@P MD G:S&53V'4>D"_#K6'6:7 ^E!M$WR&6QO!?&J-S.F\)!+0B&_&6MU)%O&L) MR=KV,6PO%KZ( 7N#%[[HW[ALQY++$6]J7 B:5?7I;\AB_Y;G]BPV@0-#]OHW M.MNQ9ZVD&?+9O^'9F<].EFG_UN>6_+58H_V;GUOR9F"Y'#BVSXY!0Z3IR2XK M*GI^2$#Z9X7J8+7ZKJH,W4/*P$GU)!(,2Y2:#>:E4JD-*=$R^O8LHY24![HD M^_1$&?OP[YL4%H @_*6@:YBB.8)9X^09M1T'M9V]=V.J=SMV1U+#&M"VLZ'R MM?SBW_Q[DMV#HOP$,^XT^?1,R.\L!9IF'1!QRM6T=+D=?EJDWDR*[ACE'K=>0R00A[Z?%%#\ .9'M1O)J MM=K1-WDZML2?!,+&O6S=[SBXZ5Y*M>3JMCZN<,>8*J0IU1L?L)4% M:'1.]R$AD.>%8'0;0JOEC3NT2005[#!:R=//?2/>=ZFAC328#64F,;$M_@YJ M3[0_.EHMSH[B1SH\0HR,8<$L47L\N)/N6B]!4,NT#X@<@E3MY=6J/1[!17;9 M,VCD6/(;WA4C1^.5:4=\95H7-E.?T4+?)P3>0X:GV;\I7M1/V9%C&"2D',-+ M;) !!3$DZ)A#@F1A#]L(X.MZ=2AB'U0-HU_7BH,+@(@(0YY0"DN&L'B$)-/7 MBVM>Y(0P-?Z$7SG^IJ=]*H L&0CAZY[OX=U0N3RM:XA4D.I^M;??H MZ8R>SNCI#(X1<]F$?9^$H_5Y&)ZP!P$F-$">H(+Q)>J^610\LQ_3B[7-@:)H M?7N#UK=7WB=N"3=(1++I-_[-EB M009[6XQ"\/2-N#N#E\7%A82K=J,%N;:QS4#.D]G\].#XW!:>.,6TI*(>]0D_8:_ M1B@8.N=$1Z-&-Y)EX#][.$K+[7T%7QC&HM22HO3_H*1ZX@/"VE.RU[^B:C:Y9.XZC:U;JFNW4/NG3>?O^?8)$ M2=V$[<_:]6GIME6,X,5AJWU^=-6^/5?MFS+3GP-2H&)!=W?LZIPIVO;17!K- MI=%<.DXK643)$26'BI(-#QZO^/=#LGW1"8%K3$I&7V*+@%5C^,' >@HB"GY[ M*%@3F/8)_(')KE1-4SE*=:/>Z>.FKMG\&0'2$#EMVW%0VT/HWB4N%CFZA]FN MNI@L]DW9L -"9@7<,2LG0MJH P)N'_!^(X^5@V)VQE?ROZ%,*7\->T:QIQ<%'B!<$K).'R+4!RL0NB&YTGD9K?3HX]Y7)[L..:EY0;M;NI5,(<;?] MKF&%:2O\A2R3JMA*(1C+&FY]ZAQ)\2I;0TAPZ]CHM-0RJE#,@US1W2&*5NLX MG-NT3?S.P:Q=,X5EE^ZC\6\&M3Y;*FLA0(2>SDXS;VLPK-HM49T#W.^QV/4; M-(QT,&3RAV!D9HS[M.8HQGUZBONTMMM[C0#]/EE@G#V@/$] D26X7$*2L$D! MQ0*Q5Y$ (22L@T(MA_43)^I$5 P=?7NAHV\JTF"ZWP U(##W2%KTC![)Z)&, M'LEQNCHBN([@.E1P;7T$>077/^Z2\TOP:(N@F_KZ@@WHM^(?B/ZC>@WHM]NT:_IV>,5]O[$ &0&[TJ8\9L";8%O$2K:B6]\ZCQ]_ZI8OM!2573[[U3=D5YW$KF@Z)IH'SV=\FG!5)-*%.N6KVQYPP'I MU=[+I&L^1MJ'7>FCMPUS*\-L;BS1=@UN<2CWBQ=*TB!8(C.U"8:@^;1X&_*P MV6!8,)1T)MXX0YY^"F;#QY08:XYB2HRGE!BC&#F?V3 ?$I#^62$J1J>B\%"& M[B%E*XX1F)3\%=CFR%B-Z25SQH&BF$_S]O)I+!SQ)Q5%/ EK\K2NK@B^P&0% MIL6<_\._TH7,.H[B-^PD7<*LRN%L?@U3O"C07S";9FQKH3G:56D4]!-A'+UD M>(,KN@A2]ENU@ID0X]KK8_IY2@PH.H* (J,%9/_^1Q'DHF(K),?NB.):HHH1 M58PQJ1@2$8 ]'9[!V33T\]$*5OG4OKY/2'W)!_M7O#C^%#>ERV0H+[J6.2%1 MQ8HJEOKF8F%'^1V5RUW1>R'+#D38Q@@;MAC)=Q8:6"P(FWN^9[@T%QO)B$>K MOE$MBFI15(NB6A35HJ@6':]:Y' DCE#9:0UN?"H\/R2T6J_K90[R) 5TF@UE%/[(7B!U"D,&'@,TE%9D+" MJ*;L=R?8W>817O!W>P(C$(] 7 &;7M\W/-DML M,ZN2?2[:ZC.!5N\$&4D!V M1']F^XWR5$,Z*;(+5#"J4;%X8L5<"7$>,2HB41&)BDA41*(B$A61MZ"(M#PH M1^CNZ (A^=3!?DKF )'D'N053/ \F=T?H* VUNR67'-"TH0)O). $54AQU=AXG:1=0NHG81M8NH M743MXGBUBW:GHT]L_7-"EX# .\!F+&&MUVS=M@@A,AW."X:V(R;BYF/&S;*[ MQ_9F@'.V%/$&PAM([E$*;_C*.>$KY_1@X7 ].=V'0N[RQ*X@09BUHR4]V4P> M ,EX+3TU2!KDX0,Y-YK9X25 "4I+F-V4C,8O;-=30?\D+=&]:5Y*3T\):J8$ MY;.U*+S1Z>28#SSX?%R!#1?LXM4=DLU/V7IW\#3,^COGN6G_D*C>1O4VJK=1 MO8WJ;51OCU"]'1"UCM#/UC7\,IR"C@K$]S8%7:$LP^GHJ""YEQ712EOQ:3;Z M)4'%/>07CR#7L%?5$%[,0WH"HDGHF$U"'>JIT^U"VIQ6A.R.>7,-U*Q[U"VC M;AEURZA;1MTRZI9'J%NV.A5]8M]?DS7!;-N5FV2= _8MSXB"?U9H+=HX@6&K M,;V@8P>*(ER.<%EYK7V]GJ[XG@D'G'")$C1(X0.4+D")$C1#Y> MB&Q['OH$Q^^_2W((G&LAR+I[@;SJAT=T>\SH5A(?>"G6PS5:+$L\K^@VGO=Y M 7A]H)_[*)VPP)X&9TQB@!(5BWUR(ZRIVM@W" 53-] M4945@9,5E^1_B=(&YX^\RH&F*EZ/CXCZ5=2OHGX5]:NH7T7]ZBWH5QJP,,( MK=80;TS!6[TC(:^:\P];I3''Q:*$9)7D3V&$COJRQ9!^M&1K@J)N''5C!=:= M\=7T&1=I7?W"..'(L7O4CZ)^%/6CJ!]%_2CJ1\>K'[F=BEZQ\D\)8JCPKH19 M :DK.E8.X@[@<_3Y5EP\)2/^L$!6C4Q$KEJ%[ M2-G6J@B3-K $*&>: *.T OOU:ZC2N WN1=5I0UI4@=Z>"D1)>0#[V*,176,* M\H\$5VO&7UYEJ%BP;SER0T4%LVTQ%5RPN: HVW[X+YAGT^*'S@5BDW=24<0M=)\N;B=%=@USMN+9/TSTB6-N6DSQ Y"_BW8C>=6C M=_1-GDYK\2>!L%%D6?<[#FZZ%\8MN7HMF@U;#TWY%=.SV=D!%@R\_X9Y3LN4 MB4_"D"'=3GEFSIC%8(/P?8I7=Z@ ^_544[V5 N*F1PVOY@,,S=\5P1>8K,"T MF/-_1,05( 5[)71&+C%E^MEN2]V@(H4'[)PQ9B;IH1Z@GXU.'Q?@W&U3P7J? M-(?G>)TM"XQ0!_X].3(E\]+!B*'.P#.4U)[]QN&&XYVJJ:6?P4I]RK<<[>UQ M/BCJ^<@($(*\N '39Q(6=,J2,<.G:,.T6"B^?83F; MGP*ZU"!BER$\>_JW%J+LCXJ6G-9FI=FP>?3<^_?<1_=Q:T9,-7/L;%X)D5O/ MQQ#N&.>%-*5ZJSNVZQOLN-70. M!K.AS"0FML6G0>V)]D='J\794=YPAT>(D7LDF"5JCP=WTEWK'@]JF?8!D4.0 MJKV\6K6K/[B,?GL&C2(J#/G\/A@)% .$K>7HL04(^Y,J9BQUXPP*3N)TSKS: M$>A7$G7&OYG'Q)"Y'T)AKI_ ,L-9^#&46>@P9,:0]9\"8]W=-V+(\,_C8;C! MR67(Y"^!,>D:%V7([J_AL]ME#(\I:@DM =)//)C/-*'O$U*_1/9OBA?U4UIF M!UF-Z24IR(&BF MTS+E LH0#.(<,9V=;P:9(>E U].I]YR8+ M+R=U0N=X7[ M]S?);LF[KA?]7])X#K=!O/)Y 1#Y#>35MLSB)PBX_R2;L4.(ZT9,WIX BNB7 M M]12.ZYICPMUE7)R2Y2QH@0S2<;T?TT!Y0J ]?Z?ER<._O'#1H5N&?JD"Y% M,)RV?8PIBC%%4JOFH%XAHR@;_?K&OJ7I:*-+#&5%<,[!WE\K-H=;0?DP@MHD M(;@CHQK&.SXO51FWR:>3Y*9DSV9+<<^&2X'G"'@28Q !Y@@K*IE"8;UL: M?5H]PXL1J ,*HU'H#1J%FDS_"P)K60;)JLD^9-JGCX(ADR(SJ=MATV_\I42X M"QVOUK!$S]X%E1-CUJ,#TJX(I&Q@ ?UF<\ECFRBTZNA5?9\0 HI%/5]L63'2 MP-,WM^PORDY-'HJLS,IR'.7X.0VN*$@LW&(8!!H+M]@7J7@6*2,V0VT,.*@7 M/ZWCHW0%7-H-&L \\*@9)A&>$7\H.TZ7_,]I,5GAJN"Q)LU=]CK*>ZL)Z^WI M@<[LGM#6L_1JI"$2OB\PT9%W4:M$Q6+"CIM[L0LDO'.;?J%8<[4IQ&ZT5[*PEV]H:;H#PC,>/.=\9= M.#X\B[,SN(WJ*E2Q@STQR W;U_%S)'G>T3]MO4>C?]I[NH*SW6NDN98=VBE& MFFW9VDHUMD3,(6V8(TW7["6%+YC$3'N'_-@R,1V]P3YCD'Y.Z!(0> ?8/"6" M- 8#.T@VLQ[72ZR1(U4QONB8XXN<+D>V&:9$Q ML)2QE2RYM$G9SC^5/%139&MS_7.)UK=8L2!;C'!\G+79C9+(IW,F@_$&PMI( M +>?;DJL)/YM.#XZF3X!\A>45800U,='1 MD'ZCLQX R;C=2N'':VSCEJ%-4\E6.;_%$F:"7H;42Y ?_LYK M3WS&Y;]@J/Z.;#SG&R>FFR-'V)3OG@'=%K4&U#LU6G!V"PH M2H6.+9D,GX\>U9Q^9 W+/5<]S5[S0\*:)RKCX0F)%-E5#@KM[4I]/BK.F?FC M!HWU%L0VHG9I __T6>H-*DXC#8Y4&"2#V;A>3AW< MQM8?U-X?]!0/7$!X6TKVUJH8@QIC4.TXCC&H+UGJP[(_TEC4/HV;(PU.E=FF M1AISZM_X/]: 4SOGU]@B3CNS5XXQ$+730!'#"0CMNA!/(1:&LQ/:[2)#1DOX MC'E^_SY!XDK@A"'[.B*X9;2SQ8A>XIRMZ8D1SF\OPMDF8(\]/D.YL.W=\++' M(@_K_)'?I :SG7)0E4("S.:[FW;8OA="I,[:D?BO.AT[NA.C.U%JJ1BY%RE: MD:(5*3#$V(/L]@H$/R3;M9 0N,:$IY2V18(60_J!@M8$12SX]K"@)JOI$_@# MDUTI_:;KE=2->J>/NY9F\V<$2/.KM&W'06T/>5^7N%CD3))GNYM.9(E3RH9= M5 6O^( OV'X%KO4M.R!E5L#=L/+YD#;J@(#;![SG2TZ!O)5?/3%-^8E.KV$* MD;@*1UU?6]/<*^VGN. 78=>%)*X1_7H"BW2Y N2K,G#9M-LQ\#)H0/5KXC9[ M\A1YA*;=AN9%DPYIT&-8#I[ND9K^A3 M'B"&O;QR\A'B!0'K)4K/$ ]INJN$$B_?VOH. ="O7%0F7<;,PZ [HYFP"TP@ M6D@J,=CW],K1#K3/UJ)L5[&XJ0T4L@VB;>_7B@YR2+>WR'V&I?(-*-M&7T7T M5>PMJB'Y*O0Y/@I3#[:RLH3$F W4Q@Z8<"2\-FM'*H:5&F^(7!L@+NR";D;G M4K36+H/+=#'9?=A180C*G]J]= HA :7?-:PP](2_D&52%5O!R[&LX=:GSI&4 MJ[7X"GN<\V M.)%BD!)G$CWD%WEU]N(,?29>HVV_3Q889P\HSQ-09 DNEY D; 9 L4!LPR1 MB/*V ;CMGN(G)K<+&F.8[ML+T[4)Q5OQ6.^_MI'WT_W:JO'2"Z+M.D7'971< M2G'>R#TB$8-'#!X8E+,1RE[QW(^[)/,2/+9%;29C^<%FYI1$!!81F.IFCOD< M\CM+X52LIUOP>,U66GUS9<4TLJUJA@L9HK$?("*SB,PB,HO(+"(S/P63' 6T M5Y3V$\,S&;PK8<8OVFV+T\Q&\X/4;&B)6.WM835M4OLC6E4KZ0VNC;_W3Q7; M'TJJFG[OG:IK7BE3DO?_ZC<_U$AGJ.'7<"CJ(6W_),>8#[VX66)2EI"L3D#Q M]5\(YMF4B3QQ)LDSQ^U[=T#R#62@))NLA$B>%!DO_LV>DYT2F*%R?RVZG&JG M ;HAO&*/N(;W.+]G)WS]O N0HIR)+R6]QOVZ(_.6OTFJY&QIPP'I5:9!,S//&/:<%I3I M(*)@M'Q]R!L.2.\)H(C>K D$V:SX#1#$U3(N[67Y^[;=!^2-+1)UT4E=\P%I MGS)MG;#CC,^E4$.SIY@;(VY,!AB0/^U5D+KF8Z0](#E5%V-&Z;;._15!18K6 M3_JRDB-=9Z]\74*.5^EL7I\,LZID(+#@!]^TFU]>4 %W%!D@#EWSP6F_ MY,B\N:R9;;=CX&70_=]$W-:X<8()P0]<(0%K]DNYL>!/-X1?'G&QX%H,%U*>QW!*@*?>D:CHHS>I=H&P\-KH'W;/L9%U!N>5&W2JZ@?V[@3NG\U"G M4D@*6;/!:%7N-'G#L=!K(Q5B:$!K1IH=#%ACZ0^) P,C$+95?D/D3Z&,8!O# M8XB\*>$8M@- (?(G/42PN>@.D2^MFHQ=U='1A4_960Z"2X^[2 7<3O 6K@;,'"Q; M70A!D,NS':8[DC(]IA$,P2U.I1[Q8FE:1-T$N5+=-:M6JS2D<%SR21L,$L3)G-#&M#BX-:;Z8VP1 TGQ9O M0QY^'@P+AI+.Q%MER--/P6SXF(]F+C.F&NR\ FZ^$M5XS1"#RCY.['*1?:;IDG6B"U^*[-4$IOPQZA3.8[[)G M=\0;Y@-W^$0O.<.=TQOSBF-><I)URFGAZ(U DAG#Z! MZ#9/3;8 =O( 2'8!$/D-Y!6O95:MA-"EYX_L)$44,H2;2L,S>W_@F.=O#5,& M2,[0/[XSR*N(7!,)#".UC/E7/ M'<=LSFI&/O)H)CHM:HO [Q MEFR93.XA8/1L*1NJP]:RNCM37Z\MV-U+OL"\5RR\3LW3P]DV>K17IB(KN"WYPJV,$Y=\.4,+_F=M2_O\#F\X8>+[(+" MR9P=^_^"@%RP#A)+5@3;*>.7 M>5X@FH*:< M ^_. GBL@9CJ--=-)0]D+)[&41F4[&RHE=^GQ2) \ARF_ MW/:*X#4DY>:6@ P68 4G179"F!R37Z[GT-VKK>JTHB5>07*):"FY(U#?,A"K MYA<*YU5^B>;V)NO770/AB4[2M%I5.4]V/\1\#L9I]4"A\'NR^03^P.0T9R>] MX@(&AQ%"X? CP=2!K6?=0N'E:::UE[0YCG+\G Z:1-R@5YT_IGG%ZXA\W")U M"9LV7;WR]!D7HLA$"??EF]5'F[Y#]'=%?]?>/!&2OVO\"6!F=TJXG/=FEB3] MX3,Z#V9KD!1,VES;]X?;JF%!^7J'V0PAY/+%+%%#6T=0Z_5(LD6[$$*62#,X M_WP'O&L-2'Z9CI%",5+H+44*R4RHI7=Z@0,O4:IGA1H+^8$,[8 M:D=S41I])X;%\N8W!UX^+>Y)O;;K)M-"8T_W_-C )NFT(D0<"$\_I"D[?@Z; M]CUC-C0$/WUG< X)OQL0/ XQ<\L3 MGE=TVZ/O:5(^M(,)VADC3IDF2D#*J.%7O^:":+I$:XG#T*&K5U?<[A5,GI#8 M=IK5+FOC?L?!S: N]R;JY($NFM:#4'ZPP=DFH(@ID>+#+0$%K:6_K%:KRQ"A M\CCCP2>W:7HX4J4,W?@\<[GS52J%N*->)C+J4/ M/8YY9*- =,][Z@2NCT>/?4Z?*TS\UBEZ!3:***!!:!CM+#_907TLUH:GC7CF M[EE[3#9>YNW%LT8[:T+>'6B!$NX->H024G_\J1XQ/:(] MIX/::C0I$(.F.33%M"K3'/0=8IJ&!?W;.L?T%F_E[>[@@4DIIS4 M!(\JY<34;HV=G0\AUXL0S)8VB,<55_I1_S>0,$-)O.D>A@4_/P3"FTQ0:?-7E M[JJY"0:6#I*O9SI+(P"WOB(^3:.A3ZZ>Z"78A]=DQL+?KS!@A_G;(GB#>0%.)G" [>?;OBJ MF8E%(T_"MNSJ-3AM\@!(=LN>J AJ;FSC-X2.[]\3OG]/#[;OA!!>EY%O])/- M4Y.M=T507<\O/7^$)$64"_7/E2)JL[?GC'6V7E3QW/X"KPA*I9&,?I\^JIG] MR!IR[?D*$H0S5>1MCT\:U8S-JI*=Y@6W-4R+DJ""HO0WD%=]K3[M\\8Z>[W* M/>ESQCI; \@]RZ>/:F9_@[04FB:__C%E?]YB_M6P!TTW1!W#>SA8>I/%@C , M74(OTK8U/4WGY^QLFIA_3]PK//W8FU< M0R[FV+FZRSBI0'X+R/ 2[][ F-* MN_^4]A[HQ.G7*:45S,XJ=M(LZC-<+"5ZX(#9 ZE,RHOK0#&%WTM2>[./"OO4 M^D:;VZ[P[P67!-SK:\1M'+9!I1$.NBU"2!B.B:,QX\K&&E>ZV!6PI&FQ;95B$::Y#JDQ7ZDV:^#V]A&FA+K*9)II&FP/4=J MCBX!=LC@R[%FP@[N;QEK;JPO#^#HLFT'C=09:]9M2'%\HTO##=Q_-KHWI]\T5Y*8)1G[#"$V5RGA>5*C?3@C%4";N/*(5SNP3%]@2XP&0.42_/+>'>9[[Y\4T?ZCN3M?,;%O0#^_>3QN#[_V&8WO&5O3]J1O)-:SQU,UC<__BCG-KQ% M[TA?6&\G[!2Y.&=C2RN,@?Q2(V\,;(^![3&P?;# =GL;7%#QS3&B/4:TQXCV M&-'>C3'DK46Z]V;!>&MA\*W,S\<:&S^,N7BLD?.#6,..-=Y^&.O5F$/QA_ U MO[40_![=PSY#PMY_E^3\!@":@%VT6C*O.-7U]\EZ>Y&E8PR8\_A>@KY:4A>C MO(XYRDM2)?X"%:!(H;@W8W=+Q.86G\ K@++)O(3D7Q"0"UPU%HJW[]T!R9?\ MWEDX6XL+/(N%(^GNHWBU=S?.L,3LK6P[/-6[2X3/I*X_TVY!\?*9R'*T'2Y(WC4GB>LPP?*J.EF)S:G#SM!PR'?\N3J-58 M7KF6T"CA2],ZQG#%&*Z]=3:D&*X8E!&#,HXO**.M:C?2Z(JN<,5(8R+:F=1& M&MO0C38XTE $)SO52",)6FE*(_7W.]I81^JM;ZGW&W(=6B$\-R>!*3 )K;Y= M.T.6*=?!X+$V3F%39H-!85VXD4V9'AOV8E!T5QZ3=["JY/BE, ,E1<@%:)#4=E.WG! >I5%#%1-QT3S MH(43SIA,>XJ75ZP/><,!Z=46NM U'R/M@ZX7#EAF\WH9*VM.RAOZI9<=WEP, M\\F44=K09# :3RM"H#P,0=YR,(H_XR(U)OIU8^]TEUM2-)5>54T'I5DI,]2- MQT;WH)+N&M[C_)Y76G]V9FL*[1KTB4$U,:AFK^N'%%1C5AA) 02Q+? *D3^% M(H1ME(\0>5,>:MCN&!E=P)>IINOYQ>FMA4V1;]2OQ>&&BV/?J5&+WS)C)-#NMAINH19E<,$SY,5*"O2 M<+N9HZ?=9.A!'.[FA$6_>_2[OS 11K][]+N;T1S][M'O;D-[]+L?L=_]4XTS M$*37<%=?<#:_(JA(T1KDT\*TRDD78X8["]H:(*T&"YQO>360%D.%RK-589". MAHVQ(#$6),:"Q%B0& LRN+\]QH+$6) W$ L279F#^\,"<&7&") 8 1(C0&(( M70RAB[$@,18DQH+T%V+0WCIV!/$C+>WB1Q!IXF8D-F0\N.HS'?@$#%D/K12- M21A8KS%%3*IG[ ""&?^+XAQE[)$ANB_.(\G?=NKLA6!Y^K9K M_S[)ON9W-N)Y1>&$4K99K6B6=?;JU)BDHA07O0(;CG#5^?[JQH/0?0U3B.XY M-9^AIEJ!21??/# XD$T+=DC 6_ (J98!=?LAJ-_M/&1(O;R];^JK597S U=< MRLIO=B5PR;7C>UC/\"6FE*V0V9Q-M9PGEU'\GKERN\6J%2J)><0%QP/ "9D@FE<=CZ'MXYP,5- MB=.ORE<@:>:9UD(LX-]1N3RM:,FD,-$A8H>NGH.&YY ]_=D-Y$^$Y8!2-$

/L M >4RV//R9Z^T38L2% O$%)+]VSY_3/,J8R)?0[=-5\\\W3/A@04(YP)%>HV?:;2A>-%4%P] 07Y.A ='Z#K&, MXU&6<12J_U;^ZLA6MO5/]>');$2ZLH-7^J_(%F9HE1)%2]\4KP'*SA\Y/-68 M6I5M/5.-UY"4&PZE2W:<\"-D+:(=I2>[21?/"1,E0 7,S@$I&#*B!W8[!E91 MBF2,J1/^4R=ZH-,0806"J5Z3H<$H^@Y>Z;\E$-"*; 19M>U()+Q!4L&WHW@(L35-!\&3]L[/8)[C<;,FKOP@XM+->91;A8++M+4 MF"<#;2:X:%+S12EW]087)VKQQDQ5.$,>_=U1:,QCLX'U/X[#DKQM!Y$\!<7]]+2&./[W#CD6K +?@M \W7AT# M1L/31CH]9=JR'2IF,HWU"$]7<9;%;HP%AX[V<- P?R X%&CJIC)S9 >GGAD0 M_MQPK@Y="DXWL^-/G2\2G$IFQYQ1+EV ^\^&1]L J> T,,M7VB;A,SB]S(YW ML^B;X)0S.R9U@5W!*6=V[-EE!CPQV_]-4S\DM%JOZ^ 7D"+J3Q0TG=E&;]\Q-HS;[#V##OL^'G #KV]EBQTX[UJ_((: MNTZ><\X%+A/1*0RQ5032::WN9B=5^1F7_X(E1W O.7+L[CD/;V\KYC2HLO%D M#7WG0D(V@:6.V,967BGE)A$F(WFX%GUF(V)_"[55$XIMW=]OQ@2/,9C-OVQC M#&9W-/Z1(4"WB!B>'&[V[$F&-Q##D6!RB#1ZU>,(PQ?8(8N@0&N]XQ M(R!F!,2,@)@1\)(E%RD2GBG9D@ML"*#">ZEM&%7#V@!-S"8+V!$\!K>$[?G M;16OX%9WJSGH#%4'MQ'.QWN[;2L[)M-"+%.TZCJ26:6J*IQ4_Q!8L#,S@= MQ)!%]\,SP.@O$XX-#EB?6M4O"=H634!,%Z#5:@7(AD.*I/]@-[T9-< MR8H*452(3&KV7K"52I0OF=4XJ(2%Y6XJ,1%)8%5U)1L)%10H1!7*!'D4PB$A\7JTK=E[13\^$R6%.@D4WW^[)ITS*-8$I M$L%.[.\<"KE;9),5)B7ZJRY^)RO8*'=D=CJ\U[DYJ5">U3$ANS^G*R8F[H50 MD;QLE[Y^\U!P0=F!F?+Y%NACP5:CFAF3+G[O<&'2F.7@$TB7#!J1S>%>57)@T".,>T=.-K>,CH;CQ:%G&!P)CY@M,\\Z MA<''B&Z$D1+$5T@CJG+H>3P<=08AH_TUVE^'8\3EA# IBB[;^J.S/3L?H<%E M%MB\*^R$18,RP_>_LEM9[OT9M!W?NX-6&)R1VW7)FZHNP5F['1DVUG2",WO; M,NQDWS+DVE^9*L?7;&X;\2O$HHLXNHB/ST5L8Z<([N0T#F7NP60>W*G:\GT/ MZFM]_UV2BPK-"=E?DI, <2N)\!N*'Y/\J0J>HX>U]7.\^%4[HC)Z4]^@-_59 MQO13S6FY']6H0P^$/94F-Z=-UJ<#\JQO)CFDT_%:DYX)?EW\W8YF6?'X?LB6 MW8YF1+/Z:K56!+^HU*"(2%"W].MH!SF?G)LEA.4E?R0')7+/FZ[YX+0K_2#Z M#F.E?U#WS>$&TPE!BR[#\R"7BW:]!N/DA: QX$+2PRL'DJ(NZA5EUBD$/K2K MRKC?@-R8K2RC/M'5'%W-4EMA^*YF+23"]@!DM&YE,WP8G"_9X+U@"^P>E'&^ MVW4Z$B>QQ0NU,&L$9]9NP:;:0A(=9M%A9L=Q=)B]9,D"_ 8G6,PX-%88@Z^3Q889P\HSX57'?.+(1,V(Z!8((96=A[WNAXW9;\D*2!D MP_A*P(I7B>.EN_9#. 8D]$J$GV@%#RS$4(9C#F5H;4[]N%T\$D/JRY\'H>T" M$X@617U1FZ2C12A:A$+!NLKC M9:3&']?3QBMR_V$+,G-<+$I(5L]B814_.6+TCA[G!XUW2FS$W<>,NR41CUPY MQZLU+&M9M2!0K*\KL*FEAU%XJ?,@7<28\E7>Z!03OS21:]C%<[4DRB0UI:=X M=8<*(7M/V2'.]&9&%L^20YFPLW"Q81J$U,F8?@.4I&]&PJ*^0]2/HGX4]:.H M'T7]R(M*T>&9,S:EJ@,D-$HGNPV:&JMKW1!F>%*,F?C*F*2%&?^+XAQE/-\Y MV3>@W,G"+V9-YCE^H(FY#NPZ&1DAE*0RQ/Y%,TZ M(.(,4"T%LC9^*QEG?U2T%%OI%E]#MLM2E,//L*PO9^G>'9 MR>8+Y7=8/_G_TQ+="^GX\M+GEU6->WS4(#K[)/VS0K0^P_B?[-!7YP":]CL. M;@9-;&RB3I$;JVX=J$5H0@B/MA [ZE0$7DR+B0BVF,UUX/M]:]M1)T_W.K-< MMO#_\7(H]R"'X@I()D=0RC %_V%29,^_.&C)A%1>\=)S9XBN,07Y1X*K->O! M/J>"W0IF6TG%>)9,[Q DC&>.KR!!F G\E/!(LC-8_[MG^_RQ#B^Z9N#O?#Z' MTI-F&"*\SO,9G$.FB&3UV7D+'D7M./;O*?L2O:ZL8-G-,R_Z@DU2?LR[>N6I M7AJS^>%RF14!2*!P"!LLM?Z*( 8]UR#?FF=D4V74QV^$<;] N'FZB=F:H===A^>)L%U\8 NSX4G2=6"> M.$KE2N3OJ%R>,M64G8A[8]_&F#VC40;F]."XWVX5<:''G(*UJ@$N<;N8C_ T/QQJ_N3T4=UN-EU#HHO%U&J'6%@#J\( M7 .4[;2,\\\N.F" M'>DJ^U[;X0;A_19O'6$[9PJL[^\6=K3ZETS#K\T0P_)H>[>M_0!^^>/WRL., M7A"\NN0SS^9NQ'&([#$J=?9VMA5#Y_A"1%5+ZQ M3/MYY>:::3CU=IC-35:;MOUPU.-B<0O)Z@S>&1'?T-QO!+S-*130&1,S#<1O M,=.@-2.[R=?%OC0$>1L&,(TNK\)T2@*MA&K\=G8AW-H8R*#R2/I8L&.IB6K] M:M7!I;%&:,QXLN,X9CR]9*FM\2RX\Z,%0]C($#>VQ*YMJ_[CUH-;"KVR?#"U M]N%[P0D+7U-E$<85W#[S-4GIPJ9;^]II-Z&]P"9N^IFF0!(C@%J79R>@: M613<>>? B'(:=&&<6#!U,BVM<4'!0NJ?I, X$"PYA=S0A MKH%)P<'K;N;#->8\.#S92FH:IQ*,16J:,"39%9?R@+"Q"$E+[@W#X<8B$=MP M+XVG&XOXLUWXW47&!XZ4EBD4P=DANID< MUTS,X$P1W4Q':,5A@K-T=#/-0]:G,H6"8T/"(2S2X8O_(N%32:H",';*IQ.N MHPK LN&#* .L)B[6 C[F6L!]5-T\"+;>8J=33*7U*^P'&)J_6%6TFXJ7##,3 MN.3QX/>P]FD+"RV#V9+9,.@1"@>: @(6/3US1!D5_)H['N-V \D]2B&]81J/ ME!%=![_5(P$IV$KG6$\H9YK7H&L^*.U,L42I(>'/V@Y*]1G*JU*:3:QI/5!- MR :WB"[=VZZS7[X(HXO1,Y=F0S>T\%W_:AMYRBU,]>E4L67QI"B4^VD-+JZ*E_SL+&P!0TZ6Z["RN$UL.KMA] M"FC?0:8KGO3"?BA+@NZJDD?#W>(KH+L&T3<-0O?(%_%QQ MK\)LOE6_A"I&9U5)2U#PY2UAQ'&4$#A]19Q&K+L.$R2O*DN"TQBQPE"L[!$K M>\3*'B]8:HV>@@LX-./;U @>7$BA&7M2=\N[B1!NYSO(97+B<:1D)A94\O'@UBZOC#>U+ MICR&!I2\N:-,)R@T1&7DL3)E+C0\U;[2V_O0()59($5PN61:LA4L-AA$@E/; MVO#7&)IARF%H.+B=.2^X=>O,CL.4C&&=]S@?9L9MTQD)36&RCD,T930T;:<7 M-VUP&>\HZ*G )DP\)>+*V)6N" M$Z;5K4"""O&O^':?=I-DL 0HWXLO?>I1^V?TG7_4%84Q">F8DY!>KW'=+1L[ M)[;191R>,X6T=TU(=+=ZNN'J]K U;#TWY%<$77(#:)(ZX#A,J MK^IT$_>!AN:7[N@T-1773BRZ+PO*M=TB:[ :JU/LAB0EF#DWB?RW[A\,=]LH M#0>^7O2,D:'Q_KZ]'A92=%V\OT]M*8OW]\7[^P*XOR\&P<8@V.,+@K4&4,%9 M:=OSZ4=3&&DXK:/F,-)@VW8&AY&'W;K:'7SZ*+Y/2"V5V+\I7M1/V7^7(0H6 M"\(.+6Z;O]LDY1(F*_ ')@DG5=0/6_# ]P0464*WH>\)Q;FK/\,;/5Y\'YZY MB7Z28_:3-!LE*"D/#!+LTQ-E[ ,OYIM5:3DCV[R4!O)TS7S1>)@]T_B"C=J. M@]HV:U/B+SLO%NS4@:1&46=,QN18!/'+?6>&73H@[A;CO'[*)Y NV4/)1DZ6 MMK%74][V'3:3JVH3BR!$DW T"8_ )*P] +'5V3,Z^Z\9 C&\&OV*K"1= [* M0-AZ'89@UNWDQ5F@@&#L9W;<64&O:)B/AGD[CJ-A_B5+'5:G&,HJEV[I3H"X M\%A8A?*GVTX[M;A9/FM :YH3I=%2=LR6,HD1HFG?B[O#7]X*9D)&;KN]4JK[&K]OME_- M]UG%P5=]+9 UDT:C>:[=+UF#GZ'\&@)]ES!X8/.<,_&.YHC?Q%:O(X45Q7F< MP;E]=86[ 6>2:]^C&2Z:X0(SPT7-,FJ6QZ=96LCD8(Q5AASV"_;&%L'5)2H< M:3R7.60<6^Q63WJ-\MP=5?.JSP!=3"JJSG-%SE>+&Y^F8E&N6,VRK76 MW":[-<6D[]EV16TCQZG6).4"^^ %SSX $E.G7KL,$R.OO!)5P-I^W8_75 M*+[#QNX1UPP;:)2P9=(EVG:B;2?:=J)M)]IVO.A!+K!A;$8>Z]-G;':;+E## M2.TU[4"A3S7^IV0.$$GN05Y!KD&R!S&Z$<@35% VB>*NAH-OM]$>*PAHQ;30 M!)3/!B@2P'77BG #7'('*')5Z/T3YD6U'XJMJ.0?LY(OB7X;W3ZQV^,Q,E!EVC M-3-:,X.T9IK5$+0$-;@3>1?X1&B!D&86E&?UZ$S:SD@QF&Q;EW>E6^C*TR H M(W__"SR$G-U^%KJQGC>*M:Z7SDVSH%.G0E_L?1YKK59^1]Z3Z+6,7LOC\UJV MMBB.S87I:"KVZ=_Z.:&\X.,=8/.4"-(*"K8)S,\^T-+14=7B"5X\3JWIBZZC M-^@Z.F=K$F\@G!09V]-P^^FFQ.G7V9HO&$5Y.[NNW@,A4["[6O2$[XG3@UWP MXK[SAOA'\\Y^^7H )+ME3U2X31K;>$Z]7:UP(5:"TI8I;>>5VKHF]-,1R)_Z MHOK_"[H->H3 @=)8;M1GW%P,:N*_AK0D*.52A*_O+^R8I]02'T2RA[ 70E@WSD:]\/P9GK:8A<(>':_1\6K'<72\OCKE'0SS/IV0[]\G M2("NA.V^VAV7/$"T6/(+R, ]0Z$+F!05GP:>$R8:T*3B#KL2"S==Q48I8)G MM6L^7:\T>'%D>N @NCJ/V=79A2>B#JX"^19$BS4V*=EA?U>57)[>XM?XX0!> MR-T5'0T<[97^[96=T_G[5JI-:J'V61CP>].D##B.$H( MG+XB[MDMM69\JL>(]N>H241-(FH2+UAJ(4O",W88<=PU]#"@W'V MXLPX0U14^+IFLNV*86/XNK9.JT%"X?,:/PI M.V\D++SZ?1CJ)G=4%(;74?FRG5=J9VN1WK1]IXI)E3<C MW%)9#.X%6K.JM%4$9XHV8D^G%01G63;B2G-(&S+EK\"Y M$5,Z &K(E;];Z(RX:L>,O[OD''93L[YJR-G/87%F8>XT9/"7>FIWG R,76^F+*LK:"=;]_7*796+!\6,9 M9=/B%*Q1"7(U1R9]/'/Q1T5+L;9OL82\YH2#QO0?OATHVPB8B0S?9" -L ,.SW=Z\R>"QG,:<8%8U!93D/9=EQ4#UK%X[.XN)Q) MX$M,91Z1QC9^'6N28X,3Q*B;S6_!XQ6WGS% ^2P6\(KM!+E/L9M1/5=D*MF2 M@=DY(%S+4!5^N;V-ITYYE! ML\)%9B\(.^FSP44QZ-^HO;$ON%@&8R9-5,7@8AK,7Z&;!3JX> =CA@V/D\'" M^A1U,;L10MU*VQCLUV^PGW'*:B!BU?1%J:%H)!WXNX.+GNM GDB,:N$% MS;4_,EJR&AJ$Z]29:CH)H2$^A:?<4SQ@7:+D0[+531("UWS2BX6H)4E!#FER MMTE6@'R%SJ58'(?W4YZE%7&Q9,O;*]E"27E@T6>?GBAC'_[]"?R!R2D[YMFV M)DW.<'6CWNGCQ;UG\V<$-+YJV[9 M!2D58Q7SRST41$C:=/#X:9%5')N"?$;$H2ZG0M.T V(^P0RELF!<:8,.'GP- M[V%1P0L& OBUR#Q'@&LUNW7(3OF\XOH-S]UD_V4"A>*79'F:'5'5!S8@&$V"KX]@O8QTX_$T043 >?K,7@?7GS6#. MM":7?LL%&+@/W^Z=F2"V8%Q,EJPI<6 P#B8[IHQ@I=^U&&OLQ!H[Q^=V;XW+ M@Y&:AGQWK(CI;;K;[_G_W0$*V3?_'U!+ P04 " 42 E7DQ7$+,5S "I MC 8 %0 '5F<'0M,C R,S V,S!?;&%B+GAM;.V];7/DN)$P^/TB[C_@O'>[ M/1&EF>YIS]@SWMTGU%*K'^UUMW22>OSX'!<.BD1)]+"(&I*E%__Z0P(DBU5% MD$ 2+U1[(W8]:@E$)A+YAD0B\]__Q],J(P^T*%.6_\?OWGS[^G>$YC%+TOSN M/W[WY?KH^/KD_/QWI*RB/(DREM/_^%W.?O<__O-__]_^_?\X.OI Q_=T%1VE.5 D!ES*].=2_/(CBZ-*D'%T"40Y OYUU P[@E\=O?G^Z.V; M;Y_*Y'>"_7Z[.E3!_^@Y&?)?3.]BFC]$MS3C.8HK[@B[[ MO\N*8NK<([$].GBG)[5&O-=FX6[RQBLUP#HM^_??WC MV]<"3?C-WTY9O%G1O#K.N;*HTNKY/%^R8B7T>P-&H"EGT!HOTP:T>\5W,N$7EV[&#YK)@*Q,B,V/*24)P)/;W9(]5 /^R<326 M47DK5K IC^ZB:/T=\-!W-*O*YC>"JR1'R5_\[?H^*N@[;M>3$[9:T[P4R!P7 M!:G_Z#).4>N2I=I=)L!^K0JC^/?-FE!$ZYN/O)?IUE:I;042^/#VB;(^%\OL2XRSI0?!-?<"%N2&D18/ MTB)":DQ(C8I_%\QP$]@$RKY4MXP6<5K2RR*-/?EC/0#GX8AU$'/O@4E@9 W0 MR*LT)PG+LJ@HR9H6I 2LO_D:G+*^S7;GC2EW<*(5*!L%<+3]*>S-B+$:TR![L2;?DR-RW,&%<%S(Z187 M_W;$TG8Q!WO@BK7?'A7T@>8;RO\KG#(1B4!PM,Y$5AEY"* 7_GW+^?=*HD"N MMBC,B&VU]F246_4)[8I)?W]4;M;K3/R&.V1Q5-X?+3/V>)1VHF<(GD7,:Y6% M#>![X>C?+9O G,AK M*L2]*4I8,!-;%1(3!+P(QX]<.$!C$J$R"5MVXKKG6Y1F)!2H/1P5!OS&N!*" M/QR)J"#DV25'<<<&8AA?=S*KS#X&U N#_P%.,H#&D<"#=+V)&7&U]@:-CY:;HH#@C!C9.8A[2#4; SV#O#,5BJZEYSB.V8:?:<@V"/#B M\\]&M]M1,IK>'GH3WO. MB1*<']_DC3CA"1:\I(4,0\S)2QG?C7%_19/$+]]SN:CN:>';9]D!.C=O12#G M6I($$!)+N"02@+\N1V5WCWVX*#T;Y\QP?']4TCOQ[X*N65&E^1W*TRL1$*?O@:YP)Q.]K M-#*6WU6T6!UE6UN"$@.#">TROP9@/RP/R922RS\RT&\<%]*QT'/B=)/-&N=O MXQUXF7F3S:O@7UC&I^'+>_;]V+T?\AQR)_LQ]/;@_:$%^_(S)TLO% M'%: \O,&I[#KV?6"\N/+_2A"NEO@AG=@W%W3(*LW1=\1B3ITI=#2ZH%( M%7LXH6O.4D,>YBYW^%>*#/.%4R?5/Z.(_$]3389O5A^ MBJI-(3"Z6,)I\88?FTZY3-Z ,([=XF*GP1X4#,&YEJ,&'\ABWV($_Q+G;D"* M %;DKP(O$OH:&+U=S-8>^"J3(.-8D?1XY%N3;B@@DD[/42++K1CY'79 .2VL M8(92F(H+1W78E=1NJ7PFU5&0I/9,R:NZ*([G!.G>MB$D*+RSQ]<@98 M=:WR5I&=W=%75-[=OGH^J>'JVBO[/B M"! JX:$BW"!*RU/2XB&-^6]+EN%DSALV'LK_6,0Z9 VASF]/NRN!AA9\)?R< MPU=";F E8-7@9EVZ;M?U2L@U7\DLI=X?MR$+&SEC(;_7G+?C%T&W)A=!<+!\ M,W2[Z13@E$M-)XAYN\L4>0.OGFE4E-R,_X7_-V#%2+=[O'^7Z6'C_%IX3N:J MB.*J/4+NG1SM66]#2!XLLR9&@:WN28UE$Q?9#X>\'(MJR@%(:XG:UJ!U LOZ M& WV6V,X1B8]X.&_#B$.WQG5+81!G5"0Q@=SE'8?O&6G1*(-AIE'@;;N6(P^ ML 8M8.FV'JSF6,=M;_0<)=@>-U@N]C:ZQ2$3_KAG5J8)]/7D_[CAYX!R20N. MONI,BIG"7GJ>$I2OK!(3G##Y)F[7C,]$Z>(PE\3#<;X;SB?4).P\;"4_=:^B MXAF,_NZPA&UNJ^4F.XKJ&A0>3"D>F8"6UASIF1KB:[D0<+9W!Y[6"R%M.9*7 M;Z(1O"ZO"+]W_GG"D9NEH$[9Y F%?#5W+D"&8?^S MPNN*Q;]>R"LX4,7R"F][+6>8DV@3R.0L1AO(^,Q[E#(G$"8UQD2@O" ":5)C MO2 MWJ2#^/Q2)JUR0V^2I?TM]F_4.D>!$A _8@)+?@"HTH>T>K9LXTS!>3)Y MNFC-P0)VSLQ=P>0G98GK"S.(QAPQP3[BMMF_4-YF4?QK&=\S.,S7.$*#6'") M5RRAF66I-(;G22RU\9J#7+X#9(^N);:-4%Y*;,DGP/:%2:8Y5TP03>16S_&^ M293TL7#IM#N/^YLG"<]/W<8F 6@VI1\T-P%W#=-'V3ER;B>/[3P73[:3Z6P\ M,*E[GNX!/L/[U1XL'=^X6J%+18N2FMW!-BB2#HX+LH,EZ:"YV$FMU*-->)TQ MQ/$X!3*Z7?Y]5&B7R>TSO'R0OO0F3RM7QT8S8)Z\4SVDYN":7K68UD?&+QS3 MEWI@-.2%"3XI9H/]]$WK'&33MB(41N3,IW788VT(?(C.:[O!EK;TUBSE!;&1 MA@W;]'#N,._+_8&S%'4;++%U$YSYGL=]/*O MZY=T[TD:5P1]X8>;V.(EGQD"SB_V^B[SMD\C%W5XW5=LN2GISK,Y^./D]Z"3H3CJ#FF(C>\VDG". @S! ?I2TIWWGS!@ M]J] I^^[09?*29OI7KXD(N@D+IV)'$G)(< @B 9?K;I5UK;8\#,8S2??WL" M\*BKYTYZK+B2N+F/\MKL?>!35.5Y?DF+E"5_IB"^-#E^H$5T1\4?3SEQVMH) M*M=L;OCY;G5@>QW.N[T"TA!G?ZPQ(9%$A43P%Y)P9 CDYQ*1GTM>I3E)6)9% M14GXP8.(T%G CW,NR/DVK&U!I*/EIMKP0XC4G6NYQ*D.J^'LCDRP M)A8![/)Q@QDY$YC5AKIFL+F[I::[:V#!45OFS:P+&0=%4=![KBO2!RJ[PYZQ M@LMW+FN0Q\_B0A"N'[@FR1/QKTSJE>3OF[*"E7RFU<7R)GJZA)YY_ ]55:2W M&U&Q_X9=1@/U\H/@@#3/7G%U+<8UTG6)_/B95%M$2=1B&L3&AF$*-HN=]IZ@ MTZG8RHU[S!'B%OUB^0N#[I?G>47A/K)M#S.2F(.;;&)"CAE0WXDX9MA-2&SY+0ZHFMD,, E!G8#!BXP]1-4>",2 MH0!W"$>_:83:['-@%57+5#^FDIM*#5Q \D%$=9((;8!$\)Z4T2?GD9(E@F,$@7 MF;2S7\%!XHP52YI"&+6_$OPNZACAL?B<KJ/B5(E-RD)/;=?D-D?#CS4,[L&N) M%K?R-5K\=^"<7P-BT#3HDT!LGHXZ=FO'??!)^_45F/+/+)>!H?D9+7XOE(6=>[5O1Y.\QS3*1X\X WZ,TYTQUE]YF;?Y[? ]++_E? MCN*H*)[!U8A64&6YZ1,HID#YODY1L.LA.T'5CQ\-3<$^U)#%NP]9R^:\1;YY M$W)$3B3ZA"N*DQI]10+QGR$L6>%/&L2;I*&[X"@[G9TW(M4D""!5, M/\1@=D?M TQ?_HGZ8$GS.LM-H?A/DN*Y;)UM=F [O(_8UNDAHDX/@3H]I3BE MR5OSK^UHIA9+GS<+JIT/FCA=L#/H%_D^*G+N$)88#IHA1W*>]2D=^GQ4/]+BQ[FB2O\AJ[&)NE,^ M#TI8)(*-Q9@*RZ]C4=H= L9>TL-8U/OH)#51L^EKFKX:XU M=^'/[D"UA^?+/T[M+6A>AZG)U+9SU3CU)/5"R3;MTO"?[OBI4F%^K__ZMMR9 MW_K[VJ!F++_C1XS53@VK@3^A_%-+P.SZH1.1\N-O_IX[DM+%_,AQ.0)D=LJR M#?]UEIZE+688]R"M[K S2?R1^ZH)O>4* (ZW6XS@=SAQ,YG1KDSI0/8C.#^* M!U];7*"H3"LCI_S7\Q0.HZT;EP#S_?#%YF7]) 7.:JN('^&P/18P$SME^B$$ M@O%^MS'FIQJI%R$!6MMI+ CZ>S11'F!#RAO6-NZ^;O#J9?+QT1C.5<_J@QU+ M_AHW[PLXL>[:+IK8KE/]U17,$. 2I1 M>K(#Q[<8O55CYCA_"[U^1 97#>N%YG#MLR8NBZN7WGZ=IMMQC76[K[%V M]-)QGKQ_6E.P!3<,?M6Y9]U[[7=%5U$*!#AAN? 6-U%V0XN5JN_Z_!"?47&A4!O8A9[);2SY@% M=B_MK#=,@/=/M(C3$JJ [1&@_@N]Y!ZO]9(:5I'R?2ZT@OSL3XM65NGU#!EH M7Q!>H)F]H#5^9 T(SLEUG(G\VSB/.F >;[8!\A_ -D'V@^PSH6J=,C 2J45[ M9G2MVFHP),VY[9@!D0* MWHSH(RM+C28JJ@L:-[-;;B!DB(5KF93)BG$73R)K1O\\JW9 V,W3:/0S:4=> M^CFB9X,#-%_X*>!@/3/R]RW0VK9G+R^)R"9/H!.!Q/[EWAYA M)=*]MSZR]5^1KFV[:)[GW-)P8Q0[J8!J"Y_9:F,%WD'CQFTC4.Y(U4C)HHY? MJ9H8XQVO>D.+(5Z,(@D;Y7T9X=RO+&X[XP#MG"*Q'5S^J2*O 4.L\XZE]N0Q ME$TBP_:DO.U6('1UC61^5T<6YY(M MY4\HA_.M/._RB\G84AL>X[8-US_CISW*;( MK\5DMLDL,0MOFEN5K:%"N,"]WSOP6W?@S,'9W$'(MHZ6?GG^1+^ [^ZH@\TW]"+I5A&0>DUWP_:61/TJCD6 MRF1$3JW#F2C/UO#Q+??6$)^B'P)2#U,$(XX$9B3#NK00EH@#VEC M#?JD!/Q)9P$$5B#Z2H\2TK%RLB]7/4K,T7:_Q'/B[JV/A^.@ F#X4]\>8B_P M<+>W@L!GN,GTG'I4F^&ULEL1=N'AZ<4V_/'*UY M.7WF^+OS_7S0TK4+V*R!,*BR6I9?AR\X0?B,7<*I7/#2\F=H6T+JAE51YB7G MS@1TV,R9011?6-K,X%H"YLQ8IC%"Q0HLCP2:I+L4TED+N7TFW7'U>HA8T(+4 M2^(:N%D4-)^5RUJ0=DU$@]CSSJ[1$UK[J34&7#*'2CH=BW)#GZIW'/:O^O&D>!FR: MT_=32CCALVY?UHNH \0#9])Z?..T$T[Z*M\TJ:7$31YLT%=*0W>8== ?<3N_ M]Z6#>_D:PAQNY&M4;-_%HU>(\>NCC'JNW([@(LVK]U["O9A[*/.B5-\[NJ": M@$F@FRL$QLY+(W0[L/V3),I-81R+]S63N>'%G!\Z*_42EAR%%^@\H<3+JY3/ M\([5Z5Y;](HU-_#%".9NZXD]+23^"+BW2!PU-CL M.T"!)"#?2XZ$%.VOZ74HEETLZH%)//!BM(/:0?'Q,-\0>GB3_C4\S-=<3HAP MHC-*VVGY[>)Y_HLDY+0FX/]$50Y,%9P;/W:&50Z:4^^?T^K^9%-6;$6+IK_T M\W )69-/D19#!X1K=7]*EY0#2DBA$]MUQ/]&M&93".C/8ZH;M%XL/S"6/*99 M-G;GK_$%UC-1S^R:O;IM>QO@<[FTUR$X0U!Q/EYY.>7P8<4SMX^!*^_<'J:S M\=#M+[7=9)W(ZLVE?($1O"FEX_CN-C0I#GKI;0;&=Q M^,M6B=9I%670K(EK_8IC5/)#(?CUR;M-Q1?Q%UI=1FFBRE@Q_!R;M:()QGE[ M9(D'B9)$OHHC41T4N]U4)&<5>:85/\NE29B<%M/=8%-)[(]/=TS&\5.J*FNM M'HCEO8,)G7/9OI4'H&%TX@ UF3Z)O'')9<%B2A/1FP->W5XL^6_XB:)ZON04 MKJ #QV^;=+U2QY80,R#YR@"2:X9K4"&P^:2,9.[4,GV"^Z^RI%686#]F+Y@% M @=2:J<,WDUJJ;7=H584FYS2NVJ38.>@W/9HJE1O?80*D.+)O4EVEZ?_H,EY MPCDX7:8T.1:R6I<*A!Z(J3V-X--:K MZ)_55XA? 1X3B[:V$L2E[K9I&Q%HI(&R'<9XA!F2RY\HR-!R><-JL37VPXTG MP J,-B!O,J2-$4JL7*SW)[G>7!1F,+RY.6YC*14CZQJ9!5D#.@O9OUUOO:YD MT)P3V71R>Y/4\SPNQ,U0E)VPU8KEXGZH/*ZJ(KW=5,*NLL,[HTYNGT*"[4V, ME.SI"/BJ?M FF<8"3\'P#_S$FE?-56:RH2 >_$>.? R?E!77\@OYG_:.$Z3E MZOI+^,M.BYO/W.VHKI!MEGRU(#FO?WS[6DH/_\W?SM(\XI3X2#FP]@G@#7M' M(4YZO.1^!U29.N.[OR\BN*]-Y< ,BG/S9H:.D6USO5*$"WES3PL: =@%64K4 M9K6DA,4;(4J@.?2-]0K\8CC:9I2?RNB_B2R+M!3N,M=*[#9+[V29Y"4K^* ( M,N;K&N7PFYH4]5^X2KNEXKZ$"%+Q(9NBNN>CRCC*R#-?'?]5EK%'4<5-IIMU M__HM>?\49YM$U#GG$Z0KH0.C/(=2;S*7I"2/]S1O_][\DFL)KD_7K "\1>"S MF;_D1)'%UD44%!!.8396MZL0U6E><2IF@%6TYDY+%-]_\ZU?38O4(6PB;TW4 MF1\%V[3MQI&Z$S\+1H>:0_.B2\W1,E9 /E8^4;>R!KE9+BZ0EFV)4O\-W,?_ M5K (!3M!T3!+;.;M)/B9TR(J[\_S!W[*X)CRPZDT$E OD.]7.1+0-/X>>:[3 MAN-:"W-$C@ 3SODU*D(VE@TRA..0/H@P]<]!3F'F.\(FD]D;N^X]$93IJA=+ M>23LY+&.<"UV&B3SFH(+%8*HXPYLBU$8%D9O#[-%![_8(*&[9_8@TJM(9,MZ+!ISAI49N:D\QG?;9[X@:/QF:H4H7H@/OZZ-Z%K M[NF^Q5R0G K_DI.1.\]A[N\&:,KT">4O&?[@H?2(\1S_ )O6KIS8>892?4;) MMAB$L7P:M&7F!/.9BIELXFK0@/6.P:=3;N?RD# )P,(:IG[J,2V2^'O8+7)W M%/N_^T?LPVTQB;?*!1KIL';QK*#/I&%\C(E'"N$R=_K=<:> M*;VFQ4,:T_XWN_P@ 8$7?FJ%Y[FE$.GNWT]86;_*V:9,*AC7.3PDJSO#RYUIO$S?@,6F->=/J&E"%)Z;BR=T6VP61MR=!5)9[26/> M-_SEJT594NZ,%?6O8-P;W[IR$(FY*=!>9%^\5NU=U:Q4K26ZA]6_/V=V3>9VB;J*G=S2GR[2"X@C=O[R7Q9VGG(ZT)W=YZAE%8E:GF5%LG9U2 M'-#)Q>FC1F9!.+ZD1GB^1PE]"3 ](AANES>MT[1T:U,9Y#V/.MMD_ .D=E!/ M[*VM7=I)0PG"I!K$9>84\\=,K36]6'99_(IF\+P8CL'EP2N_47?.TJQ8MIP& MW7G1DF$%'-Z;L[5[S-&6>!..LS1/*_HQ?0"!K?@&I;<9E1+[[OE3]'=6G&11 M60Y4R$/,@&1Z TBN&5RB(O? MYVA%!^NA(6>QS\A]T,(R\V*'E0&KL&76L%NEQ]7C]/<7J>QI#2R05+O!.I]@ M8Y<#4_LZ_ [A@#G2VET3N@_#E_PVS3+1P'I;ROJ(W-*[-,_AX1=;UJ\@Y[)( MXWX*BB72/-%=G*N8M([$C/3K[J?F?!K7*-OEB?^YX7@>YPD4$!HUDRY!>>_6 MJ4;)>9LF@$P =%A3ZG0[K31TU-TC?PGH+4+J$U'O&&PZ>G,=@WE-VYG#^;I%4==<0X'!-113Q0T,77U9/.WGUF M6A29PSGY.(XWJXV(4AVO6%&E_]BI+Z)_>!V9R/YI60'0UWG$'#.,/#E=_Z12 MFUOH)-)>I/^PP!A;ZD4&M&@]!W%6AP?T/K(OIAY#!,-86!8_U+JP#_#F)E6* M [()N7RFDNYC(NM0I?G=!\:2QS3+%#)C\BD^O704A"_YT<$%(T5NUHCT%6^C MS+B IMMU8!J%MW'ZJ([3YV,*SEU&L+Z(L"FT]*8PKMK*R-=0$?D+UVGEU?67 MD8:A&M\@5<3@W*YUPQ8X$=") $]>06GH;T(W#=6A.4,1<@Z^W(="'5[0_F=\UU @B<*T*]OM2FKY[WTT,T;QS6:-,S5M#T+I+GFR+*RTP<8SY$ M:3X0RC*? ,EU^H".CUGG M?^9ZHWS6%NO'1QU)T_D$7WE,.;6'0F3=?DF[[9(T#I@^5H0\\Z^'EA:JX-HX M#S$,&;W[E2->HR6?T/F)8T)\"X\C.FWLE,;BU$K>OED0OC7?A\#;.!/LOS8Y M)6]?"XS?!O6CA[SDN5FBH3B WD>VK9&7&,#E#/OWZ5%;1V^'C A\9/E=18O5 M*;VM1M*9AH9BZ_'V3.F:EP#FT0T'2@#J(GB:TR!9F0FM@C'-8*[H\&!+C.,G M7[.?=4)F;HX0=X!]IF1/*IIPR".[*?6=[07ERF7HBVP?UWY(A/,PS1K8>R5>;3FDTP=' MHC1[[XS.]7L#E?QKM%K_B=3 )RA[2\MPHO(5BYV3_A_F*V9 97_%B*,"J%Q> M4AGT&G'*QX9C"P8KIO7W*G\;$@WC4(\2EIE2*Q@+C97Y'!UOB8F\E>9L $-? ME?H^)'@USG$B#S!4Z J:AU[%!00S+[B,1G N[+32U?9&1V>PYGHJ(3G79BP_ M^FT393(JFS3%CN/NK1PD_8@0.A/AX4X/Y9EXI./[-.A^:A+?7WY'FD/Q6KX/ MZ7"G9?5 ;%['P83.E/IF]1>":B0G%%,-TI09$FIJEMWFMDR3-"J>/VRB(LKY3BKZ ME^F-1N7&*6=UWE&@A4RVH/'!(YL+P060ZK8 3<2HW*[O;KN^._A!Q)7XD%AZ M*M%=06725/TIN,Q1_APBSVFX/"@C1(R-<4+1YX87*R/)Q4M6\K0"I6+,^>9:I@FG-? M?YG&5+:9*_G>B22EJ"+WT0,E.8.8VBK*Y:=Y3F-Q FVDLRHV,2P-3@P1N=VD M=4)C0395[2>(B3/&?YM!^8=%^P9X6Z)' H202X-4+==U&A1D9E[57/=2KY M3I OAG6 HHU$ZFC.U6=.2D*098G#)79 MG=^2&T@N7T7/,#+;)%0FH=(U%"$0&CJG[3<2 9A6H"T*#I$X6J=5E F>$(\. MI6,OIFX&E4*51W?<(1/E(B A763)$R!;"'_,N^9A8?DZ;,A+\$"=-V 2[^K[ MSF:PJSN_OTB7E BMC!%O:[$8YNHB,I\85R\KC06XU#3U)D^020D^(/\/N.P/ M409O?XZKDZ@HGKF&_B7*-BJ9,OH6*5=:,+QDU(+QB>$'NL4C3*<<([*S2;3T M5W1,&B*:]-NIX?;59A]C"X9I ?&DYJ\[[P&[3ARJNI>CA>%TOAXV82IWF;$9 MFT9BE.B5-/[VCCU\E]!42AW_82ML_!]_.^9N>@*N^ED6W>W)D_+OAB)S,(_S MG,8&& %H7IE#33,V2@A_5IXS6T'O.9/Q@YV\(Q'YM= 4>CAUS^!+K(4?A^#< MOG=1(.?A&MB84)M-(.$<&,^N" MSA?Y=02AN7>;,LVINL;WR'!L]4;%M+Z4GPH^JEJBM;4@"MP 1U3JFL#XB05W<<)6'YRDA>]^^7])9O M+<.6AS5DP@&[J$/Q@/>?3=$GJ$5V4K]C;;*FG[5O0[5FL78W.@C-4PC]M'GI M5- 'FF\LW91:7IFM>]-!M&9RBZK'@H-WJ@;4]R:QLF;@Q:8JJRB'9$6%3"K' M(:7N8#Y?W'< &"-9%K!'U_-_5ZS--,F MD\]0]8KEHHR?KLCJ?((/5BNG]G =L@+O#H OV@*/6_C!^4J+[@Q#S-D\5I>M M"K7=MZ&/'3U1ET#"N31]V-CQX2:N<\H!2X"N'RG,Q"T;9"V#5_5]='1UOR)Z M*E9G:1E'V5]H5' +>LHWH^^N960HYMY%,:5SM2WA$@F8 &3"01. [?]&9HRN MS(18@8+0[Z(R+:_7G)V3B_R7J!!/B*XX=F^TPM#CGUL)1*O!A E%J_&9'HRV MN58;X6B!#Y$(042L08E<^18Z- LJ0]*ZM XDG.$BF$4CD.*7L'\[D6L5;G9P!1O&(+PD]J0C)MZOBK<#7"%;:X MP1L7' #$Z-$)V"+2]V[@D]!<.\BMH;GT\$Q["7V-TJ2Y/*HS]X_S1!QV#:,V M)I-9B^+H T7U='!SDZ4QS(=ID1]:E3:\F2=4HMQ?:B?54C(B&\'0T3FF^!- M]K?E( '5/U-HG$23XP?^VSMZFI;B]2;X6[6GI9!Z[#1(>3<%YTO23?'"R+C[ MM2/.(BU20607S7W,%EG]>Y0C+YJ4XZ9ZF+Y>*PF HC!*F*+C:@+V>6X6'R"- M!_Y/Z](I,IPL^Q_G++,B%R! M3/[ Z50]T(K9]G%>;2&&/@ .T%)IA"P="4T5"MQ/Z:F3@Y&3E4D[HV]5(NX1 MYZ!(#FG:JT84A/*8[\>*"GK4CRD1]4!TQM_^A,YKO@'$(VCT&EJ+#!"3Z5/( MO[,Z7,50;_14Q]5OG4 !=B'\5^-"?JX]VH'B:B9$U3XK;D%9PHPB2ZHYE0-WP[2EU'KLS[ MO.(:XBS-Z.=-3R^ H2$(!V9_*M?"(^$1 $@D1.]>BY)Z3(F*+!C:1P$D-/1"+#-.7&1(M4"[H61338U$* M7&'-QX9;R?/<3ALFJW,+?WH.YY2UV,C8!/A$9S%>DC-[&$:9BJFBG..@ %1H M'X@%=/\\(00 TW@[^0.P8,?]'8*Q,2HX-9C7JRC+%#7#1D:A#>3.;)X,HX 9 MIG[6&!F9)FW<\L$]S;(Q?ZEO$)X+.I/Y8@( &=@GZJ4ATR.,8S5_OFT]]9'S MWSGTGAI0^T/#)YB!OFF]F84.!;_<[/<+T2>6\\A,<1)5](X5:EO3.VI2?*:=S6.(IB -T(!1 MFD,R'@1J%+0)=.0^?DI5#QW4 ZT08]))%3 M;5$_XK]JVKK!"\3>)"F=X6C]T3^M)T72%%]HH1,)/I!*&2$Q,Z5;("7S.5K1 M4P97%%JJYG"X%86SG=:SVED0 $W^*H'/0?WT4%BIA%1D\\9+S1&=G]-NTUSV M.XQ_VZ2R5G?=]UMT.51PE_D$2'[3!^2: SM@93].3"C9Y7(0P>4&'=+!9T&Z M*VUZP)^,K]B1F"%8C4TGN*XH*KH[GY?EAA97FXR^>7W[PYM/'$J11AE<(Y># MG9F-/C25*6T KF5)(D$ "P)H'+U9D 83(E#A1]$)/8P=+1+9?_B>$OY16M!N M"V)H[;MJEER))6_RA!,EE;0IMK0)T*;7C T9GNS>BV[ <[Q!QTD]<&+9C>V$ MWNIN ,BP3M( -7MJ;ZA(Y(U++HMT);#X1'N2;T9&(?EC;S;7S"' U9PA(8;A M#!41F29EIEKH/-EP?YRKIXM"/*GOWW&-H2@KW#^EZ[U/6["$FQ]94E./"5RN M 6=6^:F<_Y5"1^_=98GR$"%LY@B;,!.Z3>3NFT?65'DOU8RM'H7AZ%C[ IM=LFIE"80O<^3D_N4+M\_T7A3I0_T8KE,XR';;?@I1N]I@G#O MU]5HB!I) A'28D)J5/!*TMDJ)VM.O84'4*FFO,>FD-J;\CV!54,S&1% 2\M? MM_4T52^&=#Y!*N6AJ7WE&@_A@&M>;'--B+#P#@($,%B$+@FKQ4(,0\. )1./ M8U$AJKRB,4T?>G*.,)]:*X=X"")<\<-#7.R4.IRTQBF%#;< RP7) [V(-6*K MP6J%8W1TFF1Q$SV=@[E,N7$4\C[R.&(+5*36!.('!269+GF\.7/'R=\W907GUO*& M'2>)2">(LLLH3<[SDVB=5E$F.JJ]X_8Q@?<0-"^%9A/-UB[6\",WES(5@5[3 MXH&?[&21%&Y$V5V>=L_#>XZ,9^A(E](3ELX%Y(D?'=)2]',6G?\(DYB!WR9^ M*?L U@$)FHB[?5I_%<2Q\\T?+/"F3[TM@;IG+,H';DIZ1Z!N279F6OSI<\4X(Q M>"K-SGY/DQDK=MS"3CL]U/5F_ZG^C#[$^W37'-.#)X25/V'Q 7:HS)"D=Z92/W.!DDM5[4E$&1B T MR]Y,[NL1A@ESR]C[#G MGL')?5W\#F.!.K!87A+7+*2'U/_WW1]PA+U]=W0 MX*F,LC.I;UZ1P F'3@!\6';I)V\?QPS0S)N%OH'$EDWQ+$(8)VRU8ODO4;91 M)6B-#4=:9=6TONRQ"C[&$EM8RY087P.^OL*+*O&(_V?R_4^+'W[XJ;G#X[_^ MKPWW9M^^7A#@"9%2?$IC<9XD;]^(WWX?Q&"/LA@SI;4/#0PE4^A%<5FPAS2/ M1W6P8OA4+;PWK6\]+,"#T6X0"*N)543NT\6#E N7<_[N&2K-#KS]T?C"5L;Y M=F;GL;O#D!V #ODV2(?.0VG9*N*%8RW 9[! @,87MEAK.W,PU@I9/$"'TD/, MI2*?OSA/EK''B&-UQHI3MKFMEIM,.^G?[&-LW$<+B+?XCQ8VJ#B0HW6NQ44F MMY)%91@5:A B1^26WJ4Y])J!\)"<<7YK?)\;>MS=%5+N1FNNS56\RTR:V#2R MNDU5%PZ]\.W%#7QYL:GXB3E/. 3XX%FFD>N=TS5>RG;G#O9/M(&'G@2QN55,"M=I+\/8HMH]K!E_#*HGFR"V\ M*2+P#JZ?5[!F%2?M)_MPL'2 E@$9KT'*+&RJ^,P:X^U.'Y;Q9A5%51%^ MD/6&J.F-]2Z*NRBO4Y XBB7+TD36],Z32_E>K$Y/.DOS*(_3*!,76.(9PVE; M?%E9@=LQ&"1KVT;'M2AT\5V0'8S%?7H79X@*MEB3+=IDB[=!*7!'$N2,'YBO M37:5_,Y9.;N\9[FZ6;EJ"";]?6\JY_GO (\(@*%*J2BIQW1(XB] "-%*4?T] M.=T4W#.6[[MD_++[KKMY2Y^HHH?HB;"A16. \RXW0%ZE>3WB&TP$P"D]=L," M-^:IU"W014,%V3.AH9#VXET%:?'LR^SM@3>Q_\ ]P8^L+"]R;H#63/94N5@. MOF+0^@8IS(-S^PK*#2*!$4E;JYH2E /XY-4=Q^0;PIVV1" "Y=:77 ^Q-2VJ MYP599U ]Z%^CU?I/!-[[KL$W"2*'>DS&4#3VEX(,0?>QHTK_(&RZ\^3F[21:\[]4^S7WIDR!% 34+[$PP0GC/"X73-"M A,"P2 M)=+@!!W"!%:D18OHK=N1!*+XDMD@_$S.=;W5/U 'N\&9G)SL>B&Z%FD!]>@6 MP)*X W?FYY;AW=$^N&B0W!]CTXQ/=_>!YK2(LN,\.4Y6:2[*2D*=_?=/@* J M,=?L8RS[:@%QSK$2BP6YDWC4WGVT@PNA$IDPCI#A;K!I)/;&H>+%3-36K8Y-6V*-4W==1K3:'0%(FEKY#Q(UP@-M0B/L-0-+2U M%R\';1A[C8GLVOH!@*%,_9S,N\Y^C%MW;2+[X^->9(Z+@F^0N"][][P=P()_E/3EWK)=>\\WHMN C!4,VF%JJ M^YG%6X'N],[SD%0!<8E$V.Q2;=J/1+[5!/7W6FTK+.5QGGQF>;3]S0W_J8QB M(2O#C]APLV#?MIE!WWG*IW//5]'CIXB[EFF4<:2JB^45+6GQ,/#84_=#](O/,0#.7Z1'CV35 M0 [T-E*;R Q/N:#NYL#3N;'A%MU+/^7=A?<(3?1"OHP;I>J(XQCP)=S'-+H% M'%(*EE[HU7N6<:*6[W_;#"4TZ7V&YJ?AZ?TE+@WC@4M6LKVVBE519A:]N(%/ M2+9%13BW90>9?Q/YK\'RDC39BV'IZM\;.(-[^7N:?& L,7,'QK^@^GM.E7NC#N+A91Y[%^[]UD%X1_"0^I].W@NJ:212AS]ZG]:N> M#P7;K,_S.-M D1-X6\SR*LTYRA=K*DL"R(""M"B2+HZD17)1=\]9D"VB"R)\\R JP0:O,P?; MY4U]7-$JXN?SY'U40"W;\CB.-ZM-!H\-3^DRC5.5EM#_$*D,Q@&X+R8I,2"T M1B$(BQH0FN&IY[.Z9(.(N$V"B^^"WM.\3!\H%QFVHO"F4WAX-]&3ZKX.-PN^ M%J4)- \E*AMT"!,WJ?U37S M =A9U?D9HRXS))G'H 5WN&A9#;];4HQ"!R-V9G-^_*O!-8^-%E .)5#XH9^, M3),V 6OFUBZC>%<*#=R/;^&Q4ZQRS,PGL%9-5P7(>0++/:1JB'1"UJ! (N%@ MBRA_)^K_\TS*TX[NR6"M6CU"^XQ![.O4$2;5^ (?0U#-[#%&H$(!&0.PMR)T MU8R*]9;\"W5J'^4>AB"@__L*?2=2YY.I-Q0!W,D6]JQ\2BUB]]U2S,>[;$W$ M1S 9S57Q\VCT5_L[;%W4L?F=%SIM/80,,.@Z!PM^=,[OCKB.7(4I6:I->X8F MJ+_[L?B>)IN,0M?Q6CI.)$):-;),/\?>DFF"N$44C MDM!ZT7A3V%1*A]:79EK2C6YT7ZM!%"4E#W"?"0S8HQC;<]6<%*.!.@P6*%Q2 MSN.)C%S>1$\B58O_5Z9#JO(#=#]#APZ'IS=GN =:W#+CR\,:#7YN!SQ(!8B@ M3DC6UX,\^(W@$2@^JLE+#$O0T#KZ!./0GKCT9D]FX,IJ91WXU=?[-!]7V[V$ M],9O,N!!3;A-YQ,DKPU-[2%I5:1QS8S/M*C-,"0,RV.CIW3-KVQRFK\3^@"S MA3V?ZU)]C.."G\UWM>U5>G=?72R_E%0D)6G94<4W5LSHWMR^K>C5Q9?Z\F@& MME-%9Z7I'"2>+H-MEAQ'X)K7/[Y]+3F'_^9O[_.[-*<4,F"Y.WA*'VC&1+WX M_K?U!I^8\HW&U,Y;?FS!BTO&#@*:#6-]K"EA\6;5M"'27ML5K1N5E*2ZI_Q\ MMF3%2A9[@;8!42KZWE>,T#TB)%N,O_4K/2;,QC#4]O= D7+!I0J'N"X"4YYN M5 DCII]C'RQJ@O'V<%$3']0#1F=KQ3]D%*9J7<,.'9\SYCDVE;@3+=D-8YF4 M^D]1?,^50/&LMF&C@S'62SFI:X&I 0MUW8+&6RR+ZYALJ]1VJNHL>M7@&Z!VOX%\8$S4VEPM[I8(Y"^.E0LZZ);- MA4GMJCC GTF3A3EKDS;*H[KV38_D88-1)B$H%X&G.5Q_+B5B\XDZ:<>:9L!) ME_R %:?K*&N\.0V.4GYC@;,.YO83T 3_(X[*>[+,V&-)8),;OI(LA[K[M+6P M*9J[A=L>2*#?X,[:"+O-TCOAFH4)J^DQET*:1@CK4ZK2BLOV US-5GP+TMM, MQOG ;A15W8JZ?L%PO.2F]"\T*L[X!VJ9FSHC7B*QD#WE)]S<8R?#AA M]8AG'9RY?ISU(6N0#Q$!1 5Y9VJ\KR@45$YH<;$\XT?$* /TK1CQP9F]&/-> M##P9]18VG/1@C]S;=DO+]6'C>U%] ;9^F*?1-E]CYV9I^\\X5U@P_=UI/%A^ M #='PP]XN;;[N+7CS/X?7I+9W^%!I-4_)&Z0.)A>GI7&%Q9B8)YSK'93^@)G M6.E06!$(LI)=Y=F3%'[O([/B.^[-Y<5;K&%Z\@\YL7]P[Q*BU^3#":R1>P%N MWSX[HAV]WOV8LSP/!',CRS3I"[[>45C"GB?<=HTGQW <7K_T9,1GVW>UPM*^;*7[?62$KV4L7WD M+#Z2O/S%O@W1Z9,L!+7.VJ38%[=$U1O4P M;8*86#/3!BH^ZVI*;(\$NF2+;]N22J),NCB3&NFY%>"TR@4]13KM;^U,/6+- M4["=2;UXR--/@5A/^??N/>50Q_UI6+X SUGG:&QSJR;>OKW;E&G.78,3MKI- M\R:TSN[R]!\DRC;;HQ;]MTH(FQWG2;9I=EIL53>KZ;]T_Q'&QH=VA M?3=TH7# W.+YQM6Y7(98E/%%X8RI/N6Y9PVX:>KT5='%TB5K5).H\XA6U&T=XR9#7& M04HR(_+X"T?<1P5]%Y6B?U=!01P(]N ;KHC-J MQQQ/;"T$=^SHAQXF\C#,)LR,9/,*I)N\M9P^HM"GAG@,G07=+=$#$7\_ M>&?Z(H+QVN\H;5%_!F'!+R5=;K*/Z=+\6OSP4^LAOBT(UV+\9PJ/FVAR%'&K M&]WQPT4W$,YW.F4)>07'EO(;\@JV\IN9!;9ZMD,K?*6B<8!>:0,Q-L.V:<8S M3>Z@I@UQ/I<^<[O7P6Q;;X\UY%Y,#,LV?8.NZ /--U1=4G=P("; V3NA:SYK M&UC54/%5="VA/S5LE>QUY()RN8HW NN")9NX$D-,W@D"FOSGC,(/QWG2O6)4.#\F MGZ);)XZ#<&]VMC@(_=MUU /U�@/)M"3;\QU/(R2I,S5MQ$3_#0ZYYE"3_L M\E^81UB14TV)OQJ"]!K4-,0-';IU3@-$:$C&IP5L4H=*R''!':L["C\OB,2< M"(1IE@A?BB^ =%9 +K9NV:LT)Z7X9.1 'H1.4VZ:/]-*KHR[F%65"?* GWIU M_:747[;+B#A6K/?CY9/H[TTI[A\E3],RSEBY*4;C$@9?(E6>!@3W[\_WPPM; M),A?0\<83+: 3:"K-VZ4^ SW8^T=@^2PG;E\6J^@H\Y.5] M_^8S+=I,/,GOW8]PG[9;1JQ4JDO,MY@SORX,UVPN\5B0;1-..- TY>(D,@:J MT^M*<7&#FWM*(">)FX1D:QW Q6,[--AM#2'[DL!*OH4P0K9)H"W)[::"V%G. M*I*EJU3&'1:$_RTNTK5P#OEW@_/*CEC5IDBK9_Z/*'LNTW+DJVY:6X!XAK%\ ML$FLX*!0D- [;940*O_+G;TO.2=KUD88MVEL?6K"ZL2V2@,9(^"])E!1Q^J+ M%H6%$* T?V!I+"-W=FL#>:")M:) KY(:OV^@/E !-\*'A93X7^A3? \'5J&X M#NH%U9<$Q2XUR>,];>;D.H;/F8C,5;@#X$\($TE_%9^?K+GW %?1 M',4J77$[(SE3.H,X>5PJ,#01$::]9N+#6S?FL4 )E%31T^S>44S@N:GFJ/ML(I7)U#(*FG;( M]4_W%N)03_EY J%@!&]QGANPU%'OX 'P<3HS8^)Y8ZH>D0&7B_N?G/EW:C9VKF;*$^'TGN=255TL M%9^TF;!O%"SJ&3J2X3UAZ5I\)$)P:EE&:;'M\QJWB.V>;S!1UMF2"G$_V:R% M=!:S(%OU; )O^)_&'QXX]_7+S]PQMQR'0G4R>US-T6A MQ?OG,)E&+IF!^=QA?P^R^2E7J(IWSY]$:% .!ABH;](5[X%K?E> MU",7*BD_PH;#Y QQ4)27J/[T,^&>L1U^YRG MO3[\5+^D&*[59&]&!T]_1B#/X4%0)V]@01HTC4LYS8 TR!=$T>V&RV[W^1!; MDDT._X:;'RA["J&R9<8>.P^'_JW4?M,S_L2HB=/552@&X%=,%VPGC1_2($J0 MZ>;%M_PHC3*R9O+*:GX/CW1E5O,YDA&W33.Y95%US"W_U];4\G_\[0IR*'I/ MHXJ_&JJEO5F2LK47FH&^4($MM049"-D,5?W?&=&I]-:4^%6S4\&%MY MO'=2YZ7'MU7XM\I,/#_:JC/YAC),8?)A2C,S\CE5'Y^BIW2U62D52._?$2ID M9Q[GX5$)+$PH2DTU-DJ*J9XPR^\RJ-LGLR+41>H&!Z+\UKX)G;NC'&A=/+2I M&(JM56<)_\G5ZJ"5R)% I*[-$,*3&F0.ID\QMXHKS8<55]_?,8JK.X]SQ26! M!51MC6?M:N>6#XQ!;WSN?KTK?I(8:CA>&RB\N'UNQCJ!IQ]9HBZ[UE'80UBKX]%(H M,KD/G/09HQK9!62T29Q$T0Q ZBO-QA[31RZRL+6V?:*I4(;KKL!(L>6FK#'M M4_C&'V/4MC80U\I7P!.AX1*M%1PN!JWMKBZ^S' YD\^%0@FUFHO_GZC4<\26 M1^W^R?A7K=0VLKO10'&Q "K,7,+8M*UQI4[:Z+^BOB7J8ZOJ9!^(^YO!O?LB M>](W?2EH97)P"[9H*F?.:7DXY7(I5ZSI*O1]P M/]0QG%P95TC<21#QK(9XRJ%M//O[8,$0X MI&\ZUWKELM/)I@8;(L]^E)I,ET3.39*Z_S#V>S>&R5^?8F.$'"CW*:M%5 GQ M88XG+68Y;Q=Y2PMLZ*W][0=]&&?2XY5;0C*WC=+6F/Q MEOIPSB#F.E3FSCAEF1&Y)IKNN@#L&<>OKWYL&QF#@RS_/RA.<$DYF;D&N3O( ME+8V(<:X3P+LG 5;2'6!)OA770VK2,M?C:V$Y]7B"]>O=U9>EU_N1K6KZ(D3 M),MH#$9$F(FF_'-=O!D:V)1+>+ M\T;YE*)['MB.CM&Y?=Z6D8:)U_S;%#HF M'12;WA:8#F!:[ @(L\\'[A-"%2?"@[]ADT%]G/V4J:!ASG^'M&.#!)G\JJ$O MOKE[M:+SD@$["^[U@BDT+W%)[O!>->'R+V7;_PFSQ>K->RR9[4;9M\V7: M>!XU&[;/)0ZJ<[/2:4 /B!' ;$&ZN'5:P\VP"SUN#WL[T4_8&&^B<%G4U=I& M:Z4-C$2R<,^,[H_035U 1=&T-T,UTW*V^WPY"*L.[0,S(&X@%M-X_3[^@16& M\_D&_H#OYO4,7H/B2M::P6/X\[RB'(<*.LE^IJJR=8I1^*:KW=G<-_.2X$+U M3^VE'-,DA[^J"",6=\23,_T<6Q]!$XSS(@E:_EE@S\QX3]A40OLTC&LN+N^? MH+DU'>[F.S@6;PX/Y_1@"0$HH1*J/!K+OGR%*Q9@&;JQ)-C-5@$?(9M:ASA'DI@ M25HTX5#?=!1].'Y\3!J M,%IL4^\CB^$@?R4W52&A&57=U*3^2&@H>.W-\YPK;LX9ST.QH<,AZ,#0=BKW M42$)RS0'U0JJ^#>S#=A P:R>K68Z1 FD*@WK>YI];$5UAJKR>:!"9UGHTW!# ME-K4;KG/R4R*R-A2<.R$F9#LBX#HFI>YMB%EE 6JJ39E"YA%NOKO/W">KS=5 M^9$CGKW5:SN@_F)JMX'#F7TV&9#0%T3 )V]GTFI@@-I]'0;&2!BVP47[R_^9 MTH(C<6_>;65T#ILM+U2P_+$E:2&+0_KGXU_FUXAE?$O&>F'HT=EQJA"I:N3^9\PO/&EBH).NWL-#Z>:M@&@82U:+/H;:>S!?WM[;3IZO%P M&M/T <+X)3]8#:=6#(Y%'S![YG3^%'\(."8^:&D5B$!A!_(".J &.A0/,08S MHI/'QD!Y614;\[#5(C;# M4- ;BP&/6VDDC9\(R8[F +WD8/9V6 C=V'G"YC![%/>7?=3TW/F8YO2<_ZAR M6M4#L=E!!Q/Z>/M;O_8%F$0 #92THZ8FTR>1-RXYCD65F')K\3\4K"R''4R] MCY#<,SRY:TYJH$,#JQK\O_[+'[]_\^9/7)83&J8CO1ZY&8Z&_E@MXU8!W@2? M,7[$W]Q6RTUVB.@(YV'FP#*B"2Q?1R$CI#!')%>K_DFN.J=W<-]K=GB"[FHD M:A 31:SB@B9I13)6ANK:A&-%9H72_CSC#;CE%\O6O6DR0E4.\-AXK)^KFM>7 MW"D1P,B8Q=4@JOU)Z) 8O>V+IK<:5X[Y*-,P8]H%=*!&XW,ZGUASGOQ%ZV81 MXM*B[:"G%#S@=9PDHG5$E,';T_/\)%JG592IF&EX-):/^F=U[GVW8 D\1CM* MMF'_<@#%0(;Y35F M3F]OZORTSIH^X02F>2GV#IY#]7_ M;:),UMM.F@B;$[_3-ZZ570 M#]K8T-A:P:2(Q-[[[&"+L-*!*V^7M1++BMMGYY$\=8*EA&#FF]?_%Y1!7K%M MF[]/XOB[:#/[&[:8B.>.&-UVE4+:Y8@OY M"F-;X3DZO.)8$%K% 4SSB!PR@UVU[,%N&P'H.[&J;VSXL?MS!W!EMRC8\V:G M+\N30]O3221H'PQMWE/YM<.4GRA-GUB6T.0LY?,V34$_G=WP\^@5S>#ZYXI& MV7M!\?/\G#U&:AF;-A-&\G 07%+4FH?_F4\T4H_@#$7%J:URH$#[Q?)+4Z!=;4V& M1Z*:V_3.Z/RJK6G'W.E/@-;KMI;@R1,;;E56'#:J#M%*9IC/F 'E?5YD;U8; M81TNH'HE!&P*>D_S,GW@5H+O !W4R,;?XZ^X]> XOZR\.#DGQU55I/S0+0IL M58Q<1@8')'=WX(8[P2:3UV-:,XM_O0?WIBBA%%CU/)*3/_X!.LU9-;'[=.>NU2!5:EUE6L)?>1T@.&Y[5>3TYW7*)..V,+)^(7J#+[%^Z#@$YPZI1*%32WM. MI>9-MH!-H&MXE0A2,EB R^!+Z[6P6P@!56+(2ELFM->J?ZT@J+^(D0A:U0ER M(Z?PP;'82%#?G.Y+*W5[NH0Y;P\3DQE1R']A)8/^55K?3"VC%*)35:=ZTJR: M4^D1O*]HTHS:4$%]!OA_T)0/44;%\Q[.^RDTLH<_B'O0[B\Z(]N2KGQ!:U9& MV8>";=;\"U@@@YRM#4WJQVF1 MS%6)IQ#:C,UASWU6.3NH+BZ\MRL:9W#S#;G -VS[3%5E>+#SX.NAF<'S9@), M$4,I(X>KGQ*&/J5Q(1(B2+(1U])-ZCFT*F%IS*4A5*TX)'L7W\2*?@7,Z'\202B?\ EQK,;E",/M+5M#T+J]?5,;/A-:+ M)AP5+N LETY#G_<01,;#;TZ?T@B/U4L\#%\*GY,O5%B3QJJT"^\24Q+8Q7$8 MC42( [$QLB_B2&R\*N\G.P]T1U1]AAY(:8T3>9746'U#TKDI[4 ":NN,-W'W M_66:;=]?J3++#D=@,\FV,_G2,1V0& 4P"6-T\\9,%VE7*6X].\XTB!*Z.O:9 M3-CO5CQ6\+3Y!':K8?< \E8V4!LC5!U!A^M%6CMAS5YM.![0XFK55J)U%=N,T_$2>2.'QW5 JKQ!3H\J)S9 M?;>$%K3TL[K T6_QLG,$+2;QEDC/;1.TX+[2ZSHS8=7#S#DE\.)7+-' RU, M?OL X=@X-?QEK^\F G]DI4J%#(S$YJD?SN@M.?T0-"HCW<8*$'9X6]97YJ&' MR3X?8 AF0*.@-W"-\_U<]P&^HC&[R]-_T,3@^FU\$HMW;VI@(2_>U%C9NG6S MN6Y$!:L&)?+(<6KK5RW: CK/"U(C1G37[O$*3H-#1^[?=,D?^M#:TZ;'[- Z M,('=0VL/H,"'UAZ,+!Y:K:QWRJ&U>U3='F#[VE?-Z= ZQ(^HKE7SDM?S_(&6 M4^1U8 *[\MH#*+"\]F!D45ZMK'>*O-8B"ADM$I&92N@0!XY+Z"B9O4FHZ"#% MT5NFJEO>GA%(&>O,Y$N(.B Q4C()8X08"'A@LT;Q=<3M?9O--.CA\3Q75A?+ M#XPE$#Z[IL5#&M/RFF7JL]O8!^ASFFIB]S'04B01B0JP@8X;HT1EYI3R7GE= M1B=NHJ=N!4VJ4H2:7TVLO:Z8W7?Q=04:4ZJO6UL9XB3?X%#'SD@5/042'5TN MZBFVKD7 >436,($TEW&S683)K$?%/#X":@6H+C@^F[48O\HQ6TF(>)UQ>"Y4 MP8+H&>XQSUC17F-6T >>GW1D=FR+H'Y6B94YL44.IL#VI6$F(8F16L]401CW M&D/1=&&+(]E!LANS;_$D+X,R4]X,-;3AQX5X2YJXBV68LAE6Y)PYV0S?"K2L MRW??,.[;@8*'6G<LP;OL_/XG*SQJ\4.K1H$[+Y*!;_2C9Y6I4$0I:!KC"Q(#JKFYTS^5)XL'"UP9?8J[MQ"*ZY M<8L"Z>+ CW/U6^J@):U-MH!-H*O3K/#KF.91D;(O>=NHL+?NI-981*ZXJ1DQG1*+#6&JC?//Z!51WEHUJS0C6%K-6L0>51-12P,G,_0H-% M<'4^LTXL!I\CXJH'S=<&>0X<%(KNJ?U#4_ M-5!) S:LWS1"669&+I^UNF-*D_*,+T9TOKD0/[A M^5VS5X, @6TFM 8K XX02F1K='E-!VO#7#;M+%#@06I$2(M)J$KDFKS%T$1U M>ORX2:N,7BS/\R1]2)--E$%85H1I :/[='W#WN=56CTK#R7(&1!'%4-(KL5. MH -2MD4HW%D&NPO, FG],FC/,6=TG UF\W&HZ64I_P>:<7JJV,;V\64L>-(T M.&U.Z KF&!R'"9KTS>>O3TN2I& 1H^PR2I/S_"1:IU64#7?S MU?D&V[=E:&[7W+4%3@#Z49J3&G[@IKU:!&#W*4<-Z',T,Y\ M/HH+<9TD#W5!^49-2J9-'V_\T=I9V?<7DF98+@HJ4WBJSY'J&8#/B.E,Y]Z5EB5-HB%AQD"3A,%&9;I-PQF2U M\02!99N!OTOQN6RC_'86>!^T31EJ^?ZJ*B!5) MRH_FS^?@0 MB1>Y%4AVGB WG>2#:!4? L0"[*&_ $P<0^YRN6U)=)QE[#'BE(=72"+3&=9[ M W\:2RB>-ADV9(,"ZCR64V-%MF@M2(N8?.4G4^(!-_)7@1T)G8X\<0.9W5WQ M5THC+:.[NP(>(W$9OEC6E0*U>-[H6VQ9#1T8[JL2=Y& .[6F;.1,F-=L)]@D M\GK,\%K73[TNEAIGP;'AZ"RO_FE]N7(J^!@_S,):)KU>++CKE*[YT;=! T3) MY!CL+(EMA'68*0T]"HD0V,8GVR\Q,:;"33]'"Y$>&/?)DU)MB]RO_NK X1]& M&>\)FTIH;]SZ*8KOTYP6S\=Y J'&-0C2X)V4QA=(GAR8V34;MJ!%"XP6>-@K M*QU*,P3YO#'7NR@#'_OZGE+N7\?1R#N6L>%(ME)-ZYJG:KA$ "8-Y)"75Z,$ M9J94"\I*@_=6XQ]89"<_-U@JA@IYCZ5!YA&FLG:C5=+XVSOV\%U"4\E1_(1%?O'%XV1AJPS,*/S@W(-EK1PB03LE5MT M2,H,Z.2(/V02-,1+"PY3<*>XOC^!Z%'Q?,(2VL,K!E\A^$9C=NK-(>WQ5Q#/M#W\EYU^%$O:@YL M2J()+.>/-R0R"U*C(Z((NPB1!J.P,07<%C$K='?LM7%O470VH:=1%9ULBH(> MU'+3'3[!3^N;UIN#U@(G )W4X(,Y98,D9J9T\^>&=2Z'3]GFMEINLL,K9&C= M]D +=>%E[#18E\T0G/O(?@,IC-.&I3ZS15)'ZNZ:QIN"B\S[I_B>TYM^CE9] MI]*A80CUUC>=>ZLJ89(&* &HWK79("69+GD<<\.;[V_%<]T!3M@?,H$+FJF\ MO9A^\_VKVV]( SX8"QR0D.G096:&Z\\<4WJQ7$ZS6P>S.#5;+31?21Z&:&%R M/]RM?$I*B"P?6Y)'#K>BD%JU)-%=E.9E1:I[2J(&ZQE;]4/>-#;J"K+KBO)F MN9;%#%[_^/:UE%'^&]%SA,;WGVB2QE%VGL?]QVF-H:;2-C"E^S>@ BRIX2X@ MD*QY"':YB*2.O_04[!_T:M?\KR)3JF]=W_J5"AU&82:$L\#?^BVO3[G-S.\N M1=,AE0A,FPTK)3BHSFW3-/10HN:<$E-L59,\5FBVB@^\VSB-(PTR.,'%P7)) M(A BLG$7O(/)-HEH\5M;<:ZL'E*V*;/G^H^R%_!MG4G )V6W65IG45>,5!", M7M*"W#$^'RM(*7M+PM_B)A\/W@L\WJ=<]>UTO9$Y?.VH^Z@DMY1[$(4PJE1, MEY8<9?KM-V'4Y$1EPBSSC.>WA.U+=(U4+(TO)KWEZYW9M?ZL'XVUL&>1DZ5# MZ8-'7QKD"\U<@\E96M_893 _*5H#+!8R2TN/WN-L%K3ZP T'=+$\+@H(L %6 M _IK<"RVT%??G.X/3QG_@-5WB!W@\HJQ\V_96Z2ZCW*R^U% Y3:\#M);_/Y3Q9 MZ/BZ"=K@XU#3D9X<@.JL(T#<2CE<4MET<["EI=6YL?=_-G#P=BMH UG4 M76$8*B&DO(LIV:)*&ER;E[XMMN#_M9U3.,)$8-PTY!2:0FB',HQZL"LCS.F6 M3O3[1"V@U9I6(AOY^*Z@XBBFR/G5_P+C$P[/[%K>.?2CDRUXLH6/=QAMKVBR M^YCS178P(E@!G4I.1&(*68:JCI#EMF_,JK._H>!OU4;KS!BF0TD5@6/4 L@G\K A>QQKI\E$CI91]5C10U%;W)RI]I>G?/]^+X M@1;1'?V\ ;F]6)Z"/:2),'!EIZ>U0H*0LR#ERA":+VDS1 LC@\Y7CO S:^#Z M_F&HI9D7MVR6]ECC1B*)'(EE-7VY7,*V: 7WDK&2R"SMA,?+@;KQ3?+W35F- M%LL9&XX.Z_=/ZSYF+^'RTUD+.?![MC$",U.J>6.E;J- '7]Q=#R2F93SNN:F MW<:/4?( .4GS<[3&Z:[H_FC!T5+E6=991TTF$EP/=?OY#1S9#3]%95#J@7!^ M==YDHK5XB O%'4PFY"&[6N3D>T?%():Z357VA4F!U2W2QPLH5I(\5$5 F&?/#;A@+Q%LT 1D9;?AB*NO[-BM!/W,1! MHTR:7.17<%,$">7OHC(MO^3L%C+T(1?H/%]O*D@[S^,T2\5*NNIM,!_7-;BI M1LTR6EYM8LB\7^?[VF=4G6Z6OT!/D_LL4@U5X9W>0=B@SLYDSD,Y;8JZ3*8, MW$YQEX!]_1-[J.*?&2Z6=19FE%TR6;5KI$2?R:=3&6< A#]V8DO28D$:-$*7 M\#/:A3[NTR:M-Y[<3PBI ^4*-AP9C>0\Q:SNN[]L[WYFDD4X1E]F2+2)9T^1 M4$03\& A?5P=#AP)?PGG['*>DGBA)5Q3 *< MIH:9@^E3+'1>P<'M(;BBL5E6P? <=G,*^F&YKR_/@3BY=0ZR>$P<1U!@II?I M(PPX?I6N0U@[=N>JN;^3=U]G42S>QH^:(:WO)EBEP?E]&:D6B:;I8H/&9*-E M>7G6;-CV.E=>XY)EC5DXFZ;':0Q-WZEW!QEC,.G=]3TK*O !WD7YKW]):9:< MYPE]NN+'$K4TF7^-ND_0AN+<<#68$(&*[%T'R!"!#1'H$, '+V(N5SM9T/0) M$"(F;\Z-;"+1_1W"ETLJJA:W39:O1">)PU[,JG.Y\038H[HV(%^)J_H889Q+ ME^M%>)8M.J0N$<(1DAII-_Z]@"=0L>^BW1.XD4TGN9MG2W7B?EN8"8;U%H6? M-HG%QTUJ8%ZNYHVQLO4$RN:Z$:)Y*:TH>8#+*PA?[S^,:IY.S'&]4VO*=[E-RDF';A!NVF.$)<94FRB&13UGQI&36FY957Q MESZCI_D)QL2-3&W.*P^TN&6FJEW ,E;;UG%'&.,1',*O:;+A$>7*ME:#9%OD M]FV+&!O K.C*!\,0.=A%\=#=Q^!82Y?$'N\R9GQ!K S>:Y KJ+.IN=5@G+*MS.)>3;\X97ER MS#VJA";BA5,)J6>)O&EJSZ.#-ZCF$R"O4O4!>;A395 '5V)3LZC$I[E=W;[" MF'*]ZG+)-NY9@0I1API%0X7ZQC5D<1\<:[+IQ ^1'WP2E?=G&7L<:]VM\\GT M?."#J;WF 0-T(L#/*/]73>W^O-\1$GKCL8\LOX,7+>PSV61 MYG&ZCK(K"AY; CD_9VD91QF\/%/PH:UID;PZ%;RG0%(+&]@:M@9S)>E_K;B+ MV:EX!I%P:WS,7&U8"&MT77%']9YE'+'R/3_.5<_Z9FG\V^GV20W#JZ'JHO%O M1"(R(Y.EL1/]MDN7O-Y8\S0MUZR,L@\%VZS/FW95_+>QS!*@29LD<-+M+:7@ MUJG3(1D8"]:7 L?BAS%J_FB!*A(GD2,".]&AL6Z0UD60M!B*P( M9K8WQYMVV.LZ-&*J1D8C95LQJ_?&48&MSQAQU;VB EL8<=,&M9L+>D\Y2S?9 M:!]967ZFW";>1$^7K! ![JHJTMM-):)Z[#+JRPVS.RN2)R="=\V[LO-4W,4/ MDHDX@AB#XGVQB J=?2O..'Y!1-46;S)'>S"UUMU^W^+C/-'I4&3R':K*G<;\ M/JYS#EIK0_C72HLC-RMTTG=[?]%SZ,,]Q&_*IMRC))YCO/$\AVC'#0>L*I0R M;3+WL<4.4$\114[O'QT'$2QBJ4CI[Q,'HP\QQ=$J#4V1-B9S6=^$-TN_-'OX M>6\/9[=(G/8;Y=60>2UF6H/AZ1LJ /LNRJ D__4]%7EPQTDBL(PRB"!G#.H[ MEN^>=X+,Y7"4>:@TME_@=L+#CI!T7T"M>R]"/D>KH&WB/>^\.G;M93O#7+:. MX0D\,)C3/W$V&U>M^E"#"%#(I/^INZ.Z-,22W/L3E4X!;UEQX([+\\ZE9IO& MK6#P"3--?,9B -'3&>$XC@NX&8];=.#'+3[D%8V*_(@?0E&5W[PL'!?!0J V M6PI8ZV2P16TW06+1?1]R _=H05\\822WYPT4>D\FAB^XJBUH5-+SO-:O^=U' M^+=2<1E]A E;C$[N_&JY 4LR@-M])&Q\L'6PF*F/H-,:)<(*DM#ZYS0G3+'L M$ 7S]!F,X0@]SQNMS_2INGFDV0/]Q'7 O>K0:F5.'_=;^[#]77/]WODUU_2U M>;CMVD=R_I=>2G;%WGT-[Y/]=EM06NTN3_]!D_.$(Y,N4\A2D?U)ZM?-2>=] M)T><_XTK]$2HJRLHHLN6F[+^HL_Z>@-JJ>&77>14Y*Q815G'_8B?XXPN2,K!<4&'E^)131H25>*3J%.,*0E48-2; M$ YT#7/)3O/TD$0FPR.SEO&SG GVP>S)%^Y/H]L_D[//BM. MRO/9WPR_6?#;\E,=K:-5*\7T\REY[1I@_"2P;Q$A'4SF4N?$>$OVT[F-Z>RO MV:7HK$4_RI@!]TMH6;WG/DQ>JM))-;[ MIQ4S^S^"9 $Q[TRTVB7(Y[3(3-# MT"X(9[71I[JF:WFZT6&OH<\L\%C?]+X,^!@>&(?%_MH0SW/$340M0XUQ7I"E M1"VX) URE$*5B^:4^MO##:5&E_QAZL6WXM04)&X#B6M"ZL.#( M;AS)\,"-.IN@8$IMRH;5]U_R!%(7-MPB)>^?8BAR*((H)LI_; Z;ED %*ZA9 M4"%ES4986/5/L6ZB;*%"\7KMWTM2/R5>!^<8;2JL.!!JZ>G8LSYS(['!$V_-J1A'H.DFJB MXT(>T2O%B>$/\Q;#@;@NBI#S$KJ!I]?&W[L4/)]OD;41ARV3=-5-# O4GL2"'X\!"2.,X5E-ETL6Z$9)Y-A.9-. YA62: M$G0>MM&D$#E^(A?V,F@!;G/,K-M02^M'R.Q!J?49FU;M2N)3:3WGYY3JQLHV MY_3WQ-)?VV5KKRSG\ZY.T6+7_F[X,W!16HAB'3(S]Q,7X4U!DPO(^.6(<=RA M0U\YEE*'G09KW S!N69UP$=6JUG('F,E:7""?*<6*R+0FDO2'7K3F*V=F,,Y M2]JGYA4?9,"^,3]G#4QB_YS5 VP&YZP>K"R?LZRL&W_.(J_ .X'%Q?V^5NCMFZU@WO$/IKQ(Z)W8 MTT,A^10!6^; P2IP5E"-0>CUH*O]=^ OB.YZ7#X&&>;__>^LL@K+2KIT\ S87@( M'-SR95W*IIE-*XV4<;-)=#F^::($II'*WJ<)^^**$_43(WX M'%>-1QN,C[=*#2JDP>4[TF(C^C$(?/!BXG2YDXMQIUT*K!L*5#L$N 4,@Y3L M,>='-I7J_LI:TB7EUBN!_C0T+W?#A2=95);I,J7)J!.)G@=;RM(4GFLAAIK1 MO_%M%F!)4J,GVAHU^)$U_R),04OT[C!K) ]YZZ)33^(#8\ECFF6]=27XZ4__ M/L8F-'LW-3:P9R5V-U4X=O<>SOE#?9.^R1JQ ;]4 DQQ]. MZ.MX?@@9YX8LY+:P=*;L!463ZQ/&F8II$CQM6Z\)&@U+931&BM(V65"@?S!1(M60" MRI?",L$)(T=NUXQI\%(C!,&9&C#9XK0@X':P)1%7& UB6B68O:Y_RHO=^&.EUZTZB=0H&'JY-+VZS]&ZH-H0_P'Z/* 8( M!JQR;WDEEHKBAZ/OM&H"II\.T9OH\:!8=PD2@:.+I7 O!_I9C8Y' M'QL5\SK/EP!X8(9EB\V #:/&26-C[HF_HPOJ^/H*#A)XPLD+PW,[,L4 M#:" L2%V5C1%^HD 9 CHLPQ!4"U**>/0J9WBPA7+"_BYE .H1 M/S"N2,+A+@A]JOMOD:8XZ1K*;.&$P]:2$ ?:\76E>M9#G>#A>R4= M.LXANO2A8*7*/=']S'X424SO);ES':6B4#WT;N2L9CDR@ER'@VB0P&1N\9!= M+M*+@?20U)]_']_39)/1B^5>]O?G#60[<,?Q/BHT"VA/F@M[+L# ="V)P M;&C0(C5>1"(F3A0"M;D\^YFV>\SJEKS,L-]!H?'C6+Q7+[GLPQP^(H"Z.,PA M&#B&ZXN,"XXM*GB(T"+5I]UT2*A0JWJ<+B\A6*@M>J[BAF8[.S%[>*=A\G"_ MY)TWSO^39LEY_K[D>_2XKQ!MSXO)-[8!W[GBLH6H<7IR&.H@#@^[O-] 1[.VQ=IN,88E-&EM:'DG^KZG+2F3+BE9 MLQYR7Y..BE4$2 6WJD.8LQU]D5YNDQY_R5FHXB,@QVB],JJ#X@[V#+Q:)8XO MT9M5+B:T%VN1RIC(5 U](5X*5 OQ[H7JT>8%>++C8N;(@]7I-_?:D?5W MU_4-=P;ZLA<_K^_.$=UUYTN'\#:C=R$O7B<.BY$C?:C!$_NZL$OHC_PG_LOF M5_Q_;J.2\M_\_U!+ P04 " 42 E7H,;E)!Y5 !\MP< %0 '5F<'0M M,C R,S V,S!?<')E+GAM;.V];7/C-O8G^GZK[G?(S;[F)-V=QZG_[);LMGM= MZV[YVNYDY[Z9@DE(0D(1"D#:5C[] J1DRS8!'/ !)"%49:8M"0 /?CP SC/^ MZW\^KM-O[C'CA&;_^O;=/[[_]ANW&?WV?_Z/_^>__=?_&T6?<(89RG'RS=WVF]M5D268?:1K_,W_.;F^_";Z MYON?__G#CU>?O_EZ>_K-^^_??XB^_T7^%_V/_TI)]N<_Y?_=(8Z_$41DO/SX MKV]7>;[YYW??/3P\_./QCJ7_H&SYW?OOO__PW;[UM[OF\MM34T[J&HI!WWWW?SY?WL0KO$81R20BL:2%DW_R M\LM+&J.\A-$XA6^4+>2G:-\LDE]%[]Y''][]XY$GWPK4O_FF@H[1%%_CQ3?R MWZ_7%R^>62PV^3]BNOY.0O[]3Q^^_TZV^DY0G.,USO*(B'^C'R.:KS 34UE0 MMBXIC\1TRM%7#"_^]:T<)]J/(0GX[Q9#Y-N-X!5.UIL4?_O= >4;AKD8H6Q] M*;[8M9R2\ MAB!%"QN:WG*#_.8_%YP7F%T7*7[W_=V/[SZ+M\,(2F\Q6_-;@?V)&.?/5Q39 M=^R T"\TQ_R6GI-,+%SQH)L](_'9'<\9BO,Z*N&]&K_?!>)WY090\&B)T*9Z MR3C-^?Z;Y[>]^^(_'PF/4\H+AI^@4LT"WF.Z,XC>#S*')V80^QB^$'^^7GKF MAL/0>XON4FRB]44C'9V'._J,Q=]0)L2 ?WTK1 GQRP(SAI/+ZAG*8Z_D339]UXPNK9?UA0& MC7AP3["(?9'C2S?8F/F5-EJ0_:'CAFET9R@UG?E3G[R!_2E Q !#\&ZJ$$"W M>E^8 2)/T.:BWC-,__5=K=K0E2Z4B9,@>O?#3HT0&NY2$+<6*ABZ(RG)"7YZ M?V:E"#Y6_]J1+2U!3>I530K:1] ^.I[#7*[LR^?U7$.A8BX6/8,^%?2IH$\% M?2KH4T&?"OK4"/2IID>X8X7J^RC%B-LK3Z_[N5*4ZI\;E*)>E:)+S#G&\XWT M(9-L.,)&D_0>(+&X\J# MU$S:1,J5Y=M"=@NX4=*M*D"Y!-PJZ4="- M@FX4=*.@&P7=:#RZ$?SL=JL+_1@Q'&-R+U\G+[TS*$WI@W2010O*HEB@3_)( M4&P?DM=H;$>Z5 O:@JX5=*V@:TU)U[JD*.,5AS"4X%F6E$'0U\\[ %P):S56 MT,Z"=A:TLZ"=!>TL:&=!.QN/=M;!H>Y6;?LAXL5&:$CR&Y1&,>*K:"'TEX8U M^>S'=*2F-: IJ&=!/8.*G*>"G\X%.]T<,-GS2E>GD37L/EW%;?HS"&E:00D+ M2EA0PH(2%I2PH(2-40EK)DTYKDX1W2%.>$07T>%S+#4MPRBN*E= J C:5-"F M@L8Q)8UCSI8H(W^7:_F49IRF)*D.CBRY.ECG\T4-_UA4 NSI,4$["]I9T,Z" M=A:TLZ"=!>UL/-I9O^>],RTNH7%1_E$6HBB9_="7!%?D@ /UK\M9$=*+.C<3 MCT\D">'66&ICU2^7''1=6SKS C-#D7W]6IP\:VSNB4&,&H?-/2 8T7SZM0I5] MF[NEMDZ[@#1U0&7%;>HEI&WG@+[_KT!,R/OI]AIO*'MM-0"T=$#C+4,9)_+M M&8E4-75!I7B$CK*#GWND9BRH6!4/IA1#O M'O\WWBK)5+3KGSZZ7M/L)A>R_\U*:"=\7N1<7@Y,LCJA$=ZI?\HKL:S: <6# MY1NN%3D@S7NG=BQNE>IQ9VO,E@*$3XP^Y"OQ.C8 M*0E\V\0)5>Q4["E+RM3(U;;JG;:++*9,L'DI"I8;WRDMQ/:RU6[JH%X.:!?2 M%XISXR61QIDL_X+6:FCKF_5.W+Q)IL5F0ZOYWP^9C:#]U%[DM350:'U8T4^_9 MJB8]4G6#XX()$-Z]O[LE>:T6K6KB@*JSQWB%LB56["&Z9CU2)W,NI)RT7=_1 MM(:LVM_]\6?JEH_WKBF06>D8'%0V0, MAIZRQ]O94K"*ZRFC&"#1"89@1-[[ M@8C&'P6&XH,?4, \3F!4?O #%:"#"PS+CS["HO"H@4'YR2]0WOHCP$C\[!<2 M6L<6&)1?_ )%XX\$0_*K7Y#H?8MP,P+'P1*@U.]C@D'@EQ4)BIN#0>"7$0@)/X-!X M)<=J@I[@B'@EPVH"6>"(>"6Z D(*X&>*QX(!X(L&>608;.TM7C&F6 MX$Q@)/_:Y5R*#W9%>(39GI;DF^0VE!;["K%RWKRAOT'.H&57; MSJS(5Y21OW%BGHFJQ[ SN."\@%/_LO6PE*N34FRZ.)W#U?X ;K(H[#H/."_@ MTH!U&GP>V@5B[A"*)$'H/2A%<44K3[.AFI=-5Q\*/W5.YRW#B!=L6W+N;JC7AL\-I5(03>/6,<7_![J,[4K(!;$^G-.UZQ0$@O#\+-7KXB M4R=E@E$9J=?%#A5K(P$8GI%Z7AK#T]%:&JG[I24LK1;22/TO+2$!&-.G&2=O MAPM0XW'F82A+P;^/4/Q702HEI+H..2'WF MILWC>\(#5[6&#.2IR;T-,L/'W M:>/G+#^P((A/SY2)#_^YB7&&&*%?,[[!,5D0G-2"!FK;/[5[+MN34H.FL5T' M]P?,DGN4Y9]Q(EU6GW%-'013LPZ(.*59CN/5;OB++%838FC: 3$?$3?"H6K3 MP>,_TU3L(.=$C+H/P_A\?CO+DFN<2DGR&HO55>Y1%]D%?4!J(MN-%.ZF>&F8 MW$,X>SX-RC\9QK7;C'6_P6?S=@,"MI[N#1O3G\% =X0(BC:4H_03H\6&BVTX M+:1<+@D5&S3)A.XRW^ JZXK+(%7M&FDYFM.9RX2R-7[:E$ZJT) ;&1DBMM99 MDI3+X\7%4R=;JPEJ%J+;ASO%]3-F2\P.MQ@NIE317GVTN%>UW6!N'7-[N2[Y MH^"Y?*OU)SJP>7#LAMMO#-:&*KZOW MH(DGT#4,GOC@ 1Z?!_@<$59&-<\XQ[D0#650HE#:LVM9HH@)7?X$<<*_9O2. M8W8O3\V+;%/DXF?!WDJ].A2Y-UYB9?+.VW8-',W@T@T#2#1[-[KC ?+-3U$>P+ MM&:# ?!4]\7P"N,UH#;D"R@N+&LCMS\'RUI#RUHS0=JM+>VG:"&6?70OUWU$ M%]%B+YY%)!,S*^OK6925LQ_3D:VM 4W!]M:K[>V-@T9:G0&I/3;]II]M](7* MX(T-SBM/UY+A2F=2$P/K$6R6+_7T&6.R7'=%2)8($-'S-^4]1K) ,\T4P+<; M9?#,HI G-7$;\_1G,+25W")Y!=0G6$5]*'8G'C9?'.SJFKU%VS;8W+K@'Q!(IB&J,K+5M!G)Z MS!>G!R?-+JG]E/*87 H=C3I=]\_T9S"0 ^L:B\>3.-]5 M^?^:D9Q?WWS5NJE!?=PZA)YX^Y#[#\U\)]LW_%]N!L\[0I9ZZH%_VHRXU]ZE":U5C:@:XX=93,9D^@.6#JS@$PN^@L M-U/W X! :*Y;3YU'X#X"C>KN"PCJ(ZJQ+6OJRP=\>EOHI+Y@$ER+P;78U+78 MJ<'0K?/QW;N(E!5)HPUFE>/.TNVH&<&1P]%(07 U]IH\-B8OS;C,T-.?P4"& M]#/$,I(M^?X26)/+QM@^&(.#,3@8@X,Q.!B#IZDZC=S8$%2GAJH3\.!VK!2] MCSA>EI\9WE"6"PHC6[5(-X8KQ_T2=?; M?/&" &5$H[%M!XKF)(\P_OWH,9)V:@# FX? MZ!/7JBE0MW(;[AC'M! OXAK'F)3%^/2E10S-G=)^2K,8RXI6I"[;)[(TD:C0;D//Q1!0"^@Q[ PD-79,];:'VQGL]I8W=&F7 M-[#7=*UZTY_!0';)3Y@N&=JL2"QHRQFY*PQ%CLP=1D"_=DE#NHQ@#N>48;)4 M9*_8]W1K?T4IYKL"E5^PX4IK75NW5%>JY?5>LZQ9K:HYP'L&NWVPVP>[?;#; M![M]=Y,W6)6HE4%GZF#8Z%ZT@:+C,3[U*K8.)*V)P1>D "(_;2)>^X*/V5<& MMH/XXCZTW7QL[!.^8-2(;3160%]P:;(Q Y1(_^.Z;4TTOC!,%^>3QF;B?S0\ MQ"L[=68QZP@0!Z(OFTB3/1;F(YPZ0D ^,;EY?=DTK!@%&*D QF:RE\)W%R;X MXU0A"&&"VC!!:X^!XX#!#]&2TN2!I&F$LB2B^0JSB(C'94LBWG2$RM5M'4-H M.:RKL,)&9(5(PY"$%8(=IA3L@9'+S!P1L4KRISM?U< V&J ;PL7I*!YW3]-[DBVKYYVC MF*1B']/2"^[7'9FW@N$N*=)<6+FCO4#0>DUWB# MF:GY=(VJTY_!0&9AJ37/%^!=T=1\<-HOI?107_G-MIO;N=!L*65)N40-E9=T M30>E68^ZMK%3NJ\866.UD*]O%1P>[AT>G=/Y&V)$/ER^7LU*4S4;C%;M"E,W M#,ZDX$QZ#4=P)NT1\=N95&_6HP;[VM1G#=#3J*U>Y LF&NF=VE@3?,%#*T]3 M.PG6%TR4D@^%RQN^8&'4>6E3W=(7A,Q>>IC=P)>H!1#'V!C'?0'&S"@FPZHO M2!@$DY;^L*E7:K#86(S&,%\XQBBF 'U_OI2O -38.I+C!G+06/NJ_:_D ;/R M^<(D6HF^35P+&*#)UCO11$9-G3NTUB%-?-K4!0S]O-71@E.?MXU^KW6 @8'X M:=Q N(BQ_WFJ$(08>VV,/2ARR6UX_?L(Q7\5A!,Y.B\K'B7D7BB.)!56'D:/=C.C45W]2<")30V;/]%TQ>D[9 M&EUD"_F/_,H4$=EP%+>1'O$*)T6*YXMK'--E1O[&R44B7A%9D'V!R))^5MJN M+H6T(55-@KGXK5CCI#QLC)?O]/.4$,/C00P/B(%&\/X;T F+!9V8C-7AEAZB M>E11/7H^FKJGBH-VWZ"! M!PT\:.!! P\:N%EU;" /^<(F9G!:"\1N=>L?(EYLA*(KOT%I%".^BA8I?8C( MLQ&@F:K=8&1'FG=CRH(B/HPBWN"%@?3RQHS@W"=]*D@[%Y3='-#['*G#+7W/ MC48+BFU0;,=,Y_$IMDVVKZ#G!CTWZ+E!SPUZKHVGN87 Y%:=^U':.'BFH!$G*[08;2.?=$UU61Y/)WWR6);L::=GR M>2IPO;?QB$'W#;KOF.D\/MVWU3X>E."@! 2KIU=!7P*<*,=*RB^0?$-BF]0?(/B:];BVHE*;O6WGR.^$E.^0P*S2+3>X(RW"-V% M#N=(3[,C)^AFO>IFS_:@,_':Z1;C&\SN28QOY#LZD>_H]. 52F(/?TE%$A55(^WY3%A#H%!S[PX'A7RF$O#9&,PCP3P2S"/!/!+,(QKSR(!Z MF"]\9A-UT8W8#D9NY-<\-$.N*Z$>C.+(;YIJSW^M=&JWMM%?(I+=8WD3(6F: M\J(;PI$-U$Q"L'L.$Y.B>S,@TYWYU3HWNESL"-J>%HSMY2&X.076/1A*@J%D MS'0>GZ%$NQ,%XT@PC@3C2#".!..(C?ID(PJYU8M^C3:,;C#+M]$F1>);F42' M_RK(IFS32%&R&M.1YM2 IJ!*#:-*6;TJD&[5X.4[$DBO=G1=2;)F67*V)\HD MI,([!@4K*%ACIO/X%"R[[2AH7$'C"AI7T+B"QF76N&RE(K>ZUKOOHQ2CQB77 M5-T=:5#ZQP=EJ5=EZ;)$_IHL5SE=%'R7C?+R8CMSX'SS43J9@G@:GHOU*1@R M6SY5C< 554]5\3^CO&#&P.;N1NQ3E56M&9#6JE]PC@3Z$DH9G0.2[ VM@RH: M5-$QTWE\JJARCPE:9] Z@]89M,Z@=1J"H-O*U+XPC%DY!PF'1Q"BW+7JXMB( M\2XBF6B%(T%\E5+5T)QA',B580-(2#!Q#.,/-K\?F#H-?,W.PVQ_Q_+PP,GL M7NP&2_RE6-]AM@NYMTUA;C!64,J#4CYF.H]0*3?O5$$]#^IY4,^#>A[4SIO*L)ME:ZV P<-+&A@8Z;S"#4PP"865+"@@@45 M+*A@006S4<&ZD940(M?HG<%TNQ;LX%S=.R<9R?$ENS?PF2E[##(#JD/ZO,@+AF=K>4C\76YO9X^R$)FA7GR/CPAJ>U#;QTSG$:KM MSN#T M]X;=@XX?=/PQTWF$.K[-SA0T^Z#9!\T^:/9!LS?K9LU$(\=ZUT\1$?K%78Z3 M#/.FFI9V$%>Z%8"(H$T-I$UIWPU,?P*\7N?^X8^"'DO7M[K+0'/8)<2+76F^ MN!02X*V0 !O,RVZ8H 4&+7#,=!ZA%JC?7X/>%_2^H/<%O2_H?3;N2Y, Y MW MV%!TJQ._CU#\5T$X*2^N+>.>$G*/N5CA!<-1@G-$4G%""EH+E%KJRLT& M=Z1#MR$NZ-;=Z-;UXBYG^8&H*SX]4R8^B.6%,\0(_9KQ#8[)@N"D%C10V_ZI MW7/=GI0:-(WM.K!7S))[E.6?<4)BE'[&LG9!G4U"TZP#(DYIEN-XM1O^(HO5 MA!B:=D#,1\2-<*C:=/%XPC>4H_03H\5&S"\M$I(MQ;>QF#G)"ISL"OS13&#! M2;+[\+]PFEQD9UR<5P^U)'EV M/9V:#/90SIZ/P_)/AG'MOFK=;_#9O-UQ@:V'IOP*LUA*/$LA2_Y&97[CA=@5 MA1B4\QW4"7QB@,&:K?O.9GY*UW=BA3QQ4D7W;G'+VJ^FUV@>8#PSO&+TG+(U MNL@6\I\R4A&Q3+P6/F>7E N58;^<;D@6XX,)?133F<5U6TW/CQLU>KODX-YA MLWC.0'A9B !5T.RSXU:!3(L1QX_!"S&H/0 OAAO#[+F>7OX%K?4G?2#9+DG*#0:F$ M/J6\$*?WR=;J]6B$(;OV?,!>%*[C!U&XA+-&1]P?E\ M<8KXRB ?V@PQT"R?#"')'P7/);7UFB&P>7##NW?#3\SKT4!1']Q7'%RCSCP_ M)F,!;6P;\04AQQ($[5A$G?IK,/L1J)5;9.IXP!WZ0XB^OCC$!UCT73D#?'D% M:@8'NA:G#@1HY[/3%'S)JS=O?B GR-0YQ$:( SG"?>$/*"!Z5S@8C0]^H $* M3_ %%!E=.DO[/'!^A,#K?^#JK1H@?UZO2W08\/FKYB MP_K;X<>'8:?!-6#@?O0&N#9>)S![0_*Z6@E_*V.'[ 89*'KH M'!'V&TJ+75G8SQA)SU,R%\>;U)/%9GR"..%?,WK',;N75IV+;%/DDG#QVE)2 M[C GV[+[:8HXUX9(]OVX8; [I$<3.&AL'V*O0NQ5B+T*L5?-A7'S%D-=;\:^ M0&MV;0#W=U] \J@OH#BP@X<@JT@&-P4K2JY6DSNR]9+C:G3!;UYDE3'TZ M+?KP)CYFEB60@ALV_:9? T0Z[>EZ@W/RXFUP-3&P'IZ:OQ2D7E6;7RFRS1<* MA.HH!74]"/5'!J3\ MX'QX$012LLM.)'TN[WY1A1V9ZI T&W0\]29.RP"9I5@U+\@_7%^G*_GG139; MTR*3P0SU79Z$WW=6D'7^]-%C^T1J:YR>1AHV7_N<,A.!NU,S6\[$MGQ?K@7% M[%N-.;Z\]0EFX0<_0S]TWHJ'S1<'>YOF_-2V#=Z1X!TY#N](R$PW5FW6;A2T M(XW)%[1"SF W26%&XY4OKA''280CYQ?S\@'(+;Z 8=YY;>V:OBP:%R[5R6:6 M!I>J34>3FL7?<(\S-[RYOS(!.S223 ,:5> M-O8+NPU5^CGB*S'5.R2PBDKR,HXZ2-*R'M=12%)#ND(8TH 7-7T4.V\LQJZ- M4% WZ)VN6Y++HA 762)$ND3PC.)*)FT[]U3*",HRH5E:'U=D!DV?7X(IV$R)?)PHJG*X(79X\X+H1F M(E[S@L2X?JDUZ=H!L3=RP^97B"1"T;I%CY+[5C25%4?$%^6O)W([/SW8S3\C M]B?.KY@@J&X2+8<<*I3K ;%$FL$TCLS:-DZIW"^\&\SNB:S?60>F6)+RBD2< ME/0* 3M'Z>'OLM*"6!7_QKDQB[2WYPWTEGN;SQ5FA$J&OWY.45?%#KDE8LQ( MB]WA!&=X0?)S(?X?_G+V*/]4!4!T,_A0 3:,QA@G7%)U<&1RL=>SF'#U;1"F M?@/-YUJPJ=BX!:N65'T5?,>O;[YJ0UY!?=P&WM3RT(&1YV3[W&1GNRB7YJNW MP"^R:AF6*_8B$]/,.(E+-545SN/@T4.%7[6 M^:4NCY6I0VFV5](.C()31\D<=@*T^TX]. O,+CH3_=3CL$ @-#>>3IU'X#%: M&N.E+R"HCZC&3HNI+Q_PZ6UAD?$%DQ#:&4([FT0N]6-]/L(0SWX-=T<8\ZFV M=QUA*.<09O5CC..T=4L=4R!GA[;;8XOO[#B,! R?/]=N. O> &/KSRT=P\9P MN UC?O2.K7)>Y:F>/\HHWG.SUQ*+BZ?EB?Q^-V!+*_:7*+E*X)SL9._B+@[\X^(N# MOW@JUM61^R."=;6!9-W+0>988'X?<;PL/S.\H4SF K>5F"V&="4R6Y,49.8! M$_T^HS\HVQ?WK[LH2M^H=_IDT,]\\8( 9=*EKEAN:.Z7]E&;R7N^JR,8UX7^>X"Q>K1'[4QL'#^TV\%RV M3V1I4A.AW8:>BR'#$M!CV!D\7R&ORN[3=1G(OO*&)(FIW=)XV\/M#'8[Y!NZ MM)L4L)?3F7S"=,G09D7BCT1&7-T5K^LPOIJ$N<,(Z-3F>T%Z?FF[+45+:\J30S%5,IVP]E 48IYKN+QK[@7/L.M&V#W3K8K8/= M.MBMFR4::,P?U,KR,'4P;.1QVD!L]!B?>K5+!Y)6[?0%*8 82YN(C+[@8_85 M@75C7]QGMIN/C;;G"T:-V$9C&?(%ER8;,T"Q\#_UR=;LX O#='$^:>P _B>, M0=R'4V<6LXX <2KYLHDTV6-A?J.I(P3D$Y/KSY=-PXI1@"[U_C*MQK*A=A,X7O)#M*0T>2!I&J$L MB6B^PBPBXG'9DH@M(4+E,= VA++=4UQ%579!90BT#,E)U@%@:QG"^_$J$4SA+-1W"NE$P2T;W++!+3L5/6FD5J>@)[40>>U.*,=R[X_[I/,5-K_BB9+);]'@MB*ONW"R$4KO3;FFFDOO@ M P0)-DBP08(-$FR08(,$.Y0$V_RTZ7!;'-$MFZW(W MG&6)K#$OGIFVG LFBW%17\<#FJ5.:/PK1Z2+C0I NJVRK,58W')#>$\0)OQ$2)4KFV6^($:F]R,U= M50, VGT@\])+\@1[Z$M+JIJ/@OJ+3)R[XEB0>)8G6O(<" 6:CVZ 4)^G MJ?F M%?5C$F\*Z]_Q8@0/39OQ1.KS@.]E4LL13P^7U2[ZKS(A3"2R7KDVM5C MZC;4;$B&]S0!SCY3\\%IOY0R8GW%,-MN@\]EIZ.>4,;H@Q0CT4;\DF\MYJ4: M8BANH]E22I]R@:MF<=!D0"KS'0F&0D6ZIH/2K%\!VL9.Z1:[^1JKU6M]J^", M<^^,ZYS.0TE8L])4S0:C5;O"U V#HS,X.OUV=-:;C:G!?COU60,L%]165_,% M$XV^0&VL5+[@H94:J9V#+T@8!).6?M:IEVJPV%B,)A]?.,8HI@!]RK[4KP 4V3J2 MXP9RT%C'0/A?R@-FR_*%2;02?9NX*?\+GF@B[Z;.'5KKD";^<>H"AG[>ZFC4 MJ<_;1K_7NGG 0%A??#Z65=]=_H?UY>5C@2#D?RCS/Z#A5_T=$*.%IL[Z 8U\ MZ&]_'2U?NLV MG_'GB,L+A>^0P"P2K3"4Z\8ANRN\VC,3R MPU37"ZSP_< MDP_,>>SPB8[R(CNG..1.AMS)D#LYB=S)YZV@OTWA,&W,Q?//XM@D' LQ/E8&??;^ MP"GCM\&QD#X^DGN2B"-(RB-N8%0_=_IH_D93,8Q4RUWC6?_DZ2(J2WR?,XP/ MY647>.J>.PTTY]5$/LF@%WZ156:/WS%9K@2;S.XQ$YI&^>-',;4G"+K&MAT5 M[I&^,\_QSF8]2AN!*EVV_P>&A)%0O0V0U.!$Q RI$"$5PN]4B!#?$.(;NHMO M&.G[=NG6'^FKGX);?R DM!X0YPJO=VO-/;QJ^XQWJ]@=N&;C@G,/'IX,J1B"[4E[=9A@?T38:K M6LI.IA$""7J]6$1I*>O[[8(\PFY8S)%Y]IQD),>7\CKDU]<7'5YN) ^FC./9 M0HA2_\:(G8L."EMNBQ&C84SJ=A1_$8O_]@&G]_@SS?*5ROS>;M!)('&-Y5Z4 MR#M?SPF/42K?8R=PU(X\"4PZ71R36AXQ MNZ/CS*[I08KOCZ.\P=&D'/;G(_(&0H5HV9\#R"_DZM21_MP\7F%7I\7VY\OQ M"[H:TT=_*:W>0*A7/H*1-VZX#/ZV,K$I3',O+&*X8W6"6;V\92G"& MUGB6)2=,K$OU58T-NH_!N6RYGW3J4VZTE[FZ.K+@.5UC=DEXKKB@T]QR)";_ MKQPOBO22+.Q].F^[CF1.?!;'Q;I(91F40[&Q@>^F?J H^V5L4S[9?D9_4':: MBO6AN0:HP0ACF>$G1GF#:;WH-I:Y/"-MO):RX2A.9UJC;9P]QFDA"S9]VNWV MBNE!N@[D7?Q"LS)',<=/I=OUN[VY0_".!N^H"^^HK?04G*+^.T6/.YFVB> # M,ZV93V%?,#3[DAN+E[ZXVYNR62LK@2_@A83WUW,&V+5\R9MLN4%#96]?,B%; MPF4T3/G"5BY"P$;.*F,. 1MC2J:]Q7/J9U!G;N8:8UL/&\FO%3:96+SYKNUT M((*:E/O;?48;O]#$%N@VBN%]A.*_"L))F7N]MZ:4WXG'EB:9E* [63^$X/+W M8HV3AD$+W3S,48Q"E\2&D(1>DXYGR3V2MY F)$:IVFFM:=8!$2<%%UL!YZ=T M?4>RD@FO<4R7&?E;[)E"Y\W)HKPA9+]KEHPD;U6]?&:C6<5%59.+S.!Q6_0X!'@O'C\EW"ZD MMHX%V>XQ>WITE/TZ4KPN,>+X6II^Z*+@NQY](Z5]: < [4T.IS3+&8H%-?*& M[+0DFJ_(1N%;;="US]BI;N0<4*A4ER*5(Q?NGA]GSX3O>$X?Y #N-_ALU*$U MAM:#4'ZP+XBUPXE0&,L/MPQEO#HZ5-7$;888*$##@L2Y=)1W,-67XPP]V^:G M(MH0:0206_[\+B5+77Q<_P\>*IZN!T&C:EFRB0LXE0_U T\JV3G![]:S)HE9N M^=+U?;AS.4"P]KD#E3/JHKB_5\]/,[H^D C5,Q>TR/DFH3\C+8S->1@O/[9=>[(FZA' M;9:%N4/($K&@?U=3G-_2W0:TWXFQ-N,*VBUDO(2,ES89+QT9P4."B_\)+E!# M/&WL=_ %H9 ,XR*J%N00\B5T%++H0%%%O@ 2DJ5Z399J%!+@2U)#R_T;JD'Y MD@ QMM2BD7-72)D)*3.6D?MVU@!?SB\8-BVC2XXR?\;&'GZ$B3)M8K/ <'EQ M::7[\! POEY<7^G +0\&U+H0LN^ FJ+#P,C:ETC&;)P%I@=QV(-Q_B5P,##" M"0SIKY.&=( <#[AP[M-]+\Z#H^ P>Z$$U8<8P$&P-IF,3W8?*/T4CC%ME1\[@^EQL.-UQ9 M&S'P8$^9FW-+N[:;9&>GR.^$NC<1*7G+N/5NQ;4K1';RHMB>4[C M/R.Z*;]'<4[N2;YM6*BGNP?;N3[ MF9>O1UTYP;)KGY43NF,Z4/6$KGG<44CP[ &QY%8\49-84=O&;>"RA/9$0GMZ M@.R,,5G(5KZ#D^USDYUSN*2Z8CI^]HA93+@\5[X4FECYSI\S4"Y5A_-X51)X M]PN^8B161I"[>?I$L?TD&DH[RA5FA":ZG(<>GC11S.9%+K;;3-J=+K*4%GUQH/%Y4T6OU]WOS7.B'P)>5GC].'6\!C@M@$^?/B^.&-MI\NUOF.>E M\4;>[QQ+BRN57PTK_+0C:J+GNV+2!^PW6RY9:3=T05*;S%;.X 62LE$,5?+_JJ9 MON\)\Q:43 IQLR T,/-W3V HU^*^7$L/=-+XSPO."YQ\+,1ILZQ.\I*5^('O M[TF@2I1SL1T(6%-_8KF0KAR-H4K-\52IJ7?B4I?*IR]0FK.U-1YS7Y*1U?S4 M. [$%VA<%#28;$T'J(S5WV:QJ82*'+%\C#&HO7MA^UMFQX.LC:>QOS4]VK17 M!Y$K/99AF"RJ_5E:>ZCB,/9DE^YTTOY*-/C+JJU\+_V5<*A.N+-LE-DKO<JSM,]^QKFT308RV'8P"U%TFB0<6( M44,]K(N\CR(21P2[(>BCCW(1DT!W@"#%/LI$'"G6O6_A7A3T&VN,1Q\%)<;^ M&H:/0!]+)03Q5$&DG,!:$)N:$&0J\U$!J$W]B]Q99% M!9JP3"@I<$#E]1. I1'_JX"/7]]\U5ZE!^HSKO!_U3$CB\?FVXM,3*@H[?%E M%WGI*'6.?/WCO<1V?&S?D#Y/WLX7FMV7JD<_*9^VSY]:UO[D\)U8 MYCY\?N/;6."D^3BB^$-(< MCSGGS](.&#+^0L9?R/@+&7^]\).%>=P73$*J7TCU&R!(H*T9+:0 CLBZX]U& M,- ;T'E-^LL6/&:,+6T&O2<1'M>.8["?]9=U>%PLW\I,UD,FXC&SO#DDI+\4 MQ>/B^N;!'_VE+?J9)-K69=M?WN*QXVWM$70;;?WN^RB5EPOR".U#P:-%(9=L M]7VTJ6;-&X97-Q[?43QU2_I" '6O =3G)$-9C,OK+_=7-FYOZ0F^0B29+7+, M_HT1.Z=%[3UR\-[-JNLJB+[$G&,\%QN?X-%LV9!X^U$ZG832B]1XP8!BU5LN M1T?.QEK&4O@/9#9?Q-9\^X#3>_R99OE*Y;ZV M'6:@.MPF,E4[B67W$<_N5CRK*8L^]1_S_!YHF]D]T#'.K4KK%(K#?'%.>(Q2 M26N3:=8.-*89?\T201K>4GF\FJQA@JJDTK@I@/#FCW@0X0 M*'G @Z3I< ,Q,91/Y2ACGJO-0=1\P#$B8'DP M-1IKJ -*0:9B:H;6(;PVA->V":]M;KH(\;3'$T_K(M9OLN&.P\?ZC;8<5GOM MN#_V&2UHW4ER_877C1:\MI;1_J+E1@M95S: 'F+ M0S#9V!%K[![H+PYLM%BUMG#U%[DU6LR:>M?Z"[H:+51M[<5P(=8#T;]=# L< M*@\$_FXB9N"0V8OY-$?IJ"!K&-X!Q\A>KA\K1DT]F7"L?$I6:>?;AF,&%^G' MCUDW;A$UL$1\2*5 ^3B[YSY#,^%3LI MR<]17.Y!FCK>ZH8#TJLM\Z5KZI3FC^(E/V.;(>YI>B\O-'IQ5!ANA@#T"6%J(4RM59B: ME;P80M..)S1-(R)26Y',%TPTJ@FU40=\P4,K%U"[D]@73,SQC"8%UY?(3MAJ ML1!S? '&S")F@=L7+,!;B$&+[B\D#H6" 8/D5@C'X_M1VOA[UA MYT@*W0N^,#C(C*"CFL7YC'*YP4*8[H(EJC MO&#-KW1N,O1 7F(X:<%9?/3.8@BS-/(9P[DPN(Z#ZSBXCH/K^&63H2KX')#P MN=JV".;7>)]H/U]<,9+%9(/2BPQ:QJ?-F-&[\>-@+''3:+#)S%Q=[*;!4..? MM57=FY;##HA&B&H(40TAJB%$-=AI-"&X(00WA."&$-P0@AN"=W(\WLF1PQ!" M&4(H0XB$&F\D5 AN",$-S86+>\SNZ,AJ>_1DGNIOJ_$#1+-YN[]CRQ<$%7;B M_C9SKX"KM[HDV!_!T\YS^HWFZI#.$]O0:VO-4%&66)8U=4U^LBU0>;^4EQ_*F9(97XO C][C"^))R+GADOA!@J^?4 M9!2W,TW$X2P$ Y3*2I$7V2G:$"$3JF:D;^V6\MI=]<6/ \5H50\W\/MAFS'0 M.;OC.4,QB-[7;=W&G2*^$L>E_$?>2'Z/4JE)S?)3Q-A6'*7E!>.*65CU=3LK MNEZ3O%0*)8$TDU(!%JHA5H8!FWLXGP'-;G(:_ZE]!8IFCFG-2@;^G>2KTX+G M8B=F)LFX05?'L<*5XB]/&7'$[-2]/6$IXIPL"$Z,Q7L:CS/X;*^$'JH]%?2= M!I*4]D0]B6X5-4(J,,Q"W6%8^@]D.(M)O.PUT+OX1&GR0%*5^//Z9Z>T760Y MRI9$J"9/[_OL,4Z+1&S[!KHA70="_"*[%UL(95LUJ]0U<9S)\,2:"A(/6@R5 M%_!,@9 &RN-U1=,$,RX%'>7]D*9NP\_&4"'O3A?3"EX\NZ $, MB?6UYJ-E$ZC- PS-R*\X!$-3[V@#PS"%J\DM-E9[YQT8J2E<2 Y&RLZ]#\;( M^B;RL2VJ%I'&< G/%S$8&ET!1\87X1?@BH*#,H7+Q"WEFN8W88^;08 96T!_ MMB]Z-6"^-8JC+CO"%WZQ1@82^.^+/FT'CGVPJ2_*-A"G%NEJ/:K@[F7D1FO. MG"SDBTYN!X\QPJD_?7P *<<2&V/ G5=:>G/&44>9>:6#*2& M"1@]JNSCY:^V*> ]:O.#E">QXSAXI*9?"G[CHZ^YJN^'V/VDG@!3$'W1WF"F M$&APF2^F$,!\7WI'];'5OMA![Y\7ZLX!L, &5&_#%XF$'C6V8>7_6CC&C MU*H"1P_&CV&OD;1!#AQB[)4MQ XC<_A[C[:0L8-CFUGZ#)6+FSA_B'BQV:3E M-RB-8L17T2*E#Q')%I2MRX>^N% #T+S9Q9T.*.F_,J#;F83:@;W6#A3GHMS\ MQ?GX9%$I[2A/9I17U-AUZH! Y8TX#CCP<,Y#TN&XY%(I=Y&0M70=1D0+ #,3<36MG)*J;0B M"E:6@>'\A5E6_%W:3@PY>M;]W28(R[BY^>+K+FYN?E?I8Q?9V6.\0MD2GU,& MW#^[&S&D%/N0?GMP&,ALG'-Q%%P\GP2FS%:[WA[EB0Y^)(>DTY!T&I).0]*I MRBW49&?V!B++R5.@+.O-8FJ#CUXQ\08BT"IKJ#7XLL[LIT_;*NJ^\%(/>7^\PAE2812L567%^"(W3J*RUL-(P$N%[\?MFWF M'NCL>8Z< !W3&TS]O9KZE>IR9Z\19"_OF&D&NV;F$Q,4VEXT4]?)[3SV6(LC MZB,M[O)%D;XETS MFS& 9XLY(T>>&38@$<00*TDE_ZT]=%>S0N2C-PJY;]$9%=]3N;F\&*] M1FPKG7C[K[<-M6_[@1VIV4T)"_KT,/JT_?L"*@YYNN*!E(8GTBX1@^?!<,P@E([V(T=AYG/[Y3]>9%=,1IC M;C5OHU*WV O#KI[T-V#[AYT=X6F97L:>\* 2 M=']YU*,U9>A$=;<6C%^CS:X:>+21Y%P37_]C,M-'A$QW9/#JG.!A# M>C6&G!YGWYZA7+H$E?MPFA-./BZ(XEY*7HM13K5#\92!>W]P>+-220E?^ MWPBHC]M9R,A(65@!/@=S#Z9B.ZM5#AB]VX(2M9"/6^F) ;(M5 (>W/JCP)Q,#*%ABG MD=?G;(@36*4#XS3R&TEL<6ID&06#-?)[0QLR%=SDY,L)Z"+(8.1'6P@RL/.! MVEAMCC-!H"\/Q!'F#M@8U]PZX-]]'Z7E93$1>[H0-T+5O9[26%'^&*4'5X T M<[NW?HXC9WM'= 87>Z\N]A=U,9[O;%$[UT$=>B#L^48A.&VJ/AV09WUEY"&= MX,[-W 6-27Y[(9@=U0>W/CDA7'7S.(CJUYT[)?E5,1]-L(J^99_Q*:TW:%!4 M2D?'@*M@"Y1*#KE989Q?RD=*.4KM?34U'YQVK6_/W,$I_8>KT[2+6G09?@[J M;=6NUV S>;5' 6:AZ.%T!HK:7WJ.@G4:PSR,7 7N-^!L8)P%ZA/"#T+X09OP M@_:"2@@Z.)Z@ Z/D1^WE+%^P,1O087*S+SX5$*] =4%?O"Q@4"P,3KZ$"C3& M1F_P\F4]!1]E\%%:NHTL- CO5HD6&+#2?DR^QE9V8U\.H28+2V\O\25"S7YE M=82+=43:Q):6R?WE2S1:JZ6ELM^!P;&^*7J,X%B9S,'0_'(L"TSMJ74<-/,A M6E*:/) T+8UL-%]A%A'QN&Q)A&2[-\!5-Z!P\4L4(\:V8FX16LL2J[(^UM,0 M#2-J>B7"5;B-@TF$6)QA:G_V^VYA;GP'[.7(%_)I1X3""[+_.?IAU-3]."AU MYY1ALLPJ.2W>WC*4\;30A/Q?):/2B4S"!;>L08(!5L!H#_[<\4V9]DHC^:FA0M[1XURIWIV2&Y3L7I5L:?FBZPT60\M]8\EP^2:OT+9: MBZ!4".M!HO<=3F$N.:K6ZU_^4D>PH4OTSHD9HZ-U C-8=+HHG=5ZY.(PX/R4 MKN](5FY/IS23EEPQ+YF,3I+2LBMW+6@8<"=CN@T15C*K8HKJ#N&^S6!&Z,B, MT-5^$@P&P6 0# :C,!B,43_N\+CNCX5DN2 \*G6Y$ZF\/QO#/69W=(206>H% M_<6VC2^0PEJV=&:2B6F6X$Q@(__B-"6)+"WS++!PZ;"($5]%BY0^\ AN?6DZ M\B^:/@>P[KBG-R7N]'L MCN<,Q^=EJ[UBVQ6NM/G"Y- ^\Z A*.GN[T01:Q"^3]9T.P>I;B\/%ZL.!*+ER0,%%UU M;"@/$R76:HI7I3M63)3)D.6/N/KW:>)GCU6@SK40_,X6"ZP\^]P2,9"A^>-. MQZK.\UOT6);T%?^>BB_)VXI8P&[-_$$=S,9<'5,Y(WA7IW.JV&.^.&29>3:" M?6@\A U6U^B*$2$0;U"Z,Q&IH-+V&>I>N'V8S#RKT"X%P_FBOA(>I,]0$WF[ MR\[B6(IJ7$"L\4<9^PVTBZGI$AH8%FNER92>NX[J-3&QH ^,8S;3>M5U-"]+ MJ@=2S_V=Y*M3H3V+ _+)_K<%3U [RFCF>G#^[]9,>;WSP=<-6+;)H(/C4%WC M;,/"!WW&LR2?[#:G:$-RE!KL0_8###T_:8U_-D[ISCI8YQ&]NA?4-=E4C2,, M/,,KAC>()'OEX^QQ(RWZ0CPL";=\F9#!AGJY8K^K,ZI68N0+HZIBNO !!M([ MX00:=J#F XUAOO(,X'F+-UHSP+C>: V!S=XH8* QS+?&\6$WSYH!QO5&[;U( MS0=R/=]GMY9Z*F_;.*5R9S8XI\SDAX ?%ZW&'.J0W-M/KG%Y,\XM%:J!U);D M77>"0#&9FQ5B^$2<]N4=9>)XUQD FPXW]/1OZ4$0S9:W MF*T_XCL0_0?-AR+?ZE!2'#G#F/\FFY12G63G,J[/(*E"NH3$FL$#X'5O)Z3' M'$]ZC"FRK28M AC(YPM"@%+ZD.A 7Y*)( P#BC3VI0XX%!!]X+,O[!$*PX=T M.\OTGK:V35_0:H$#!9E7O=MCM&S5?^*%+XS7*U(';\0^0+0'CAWRKGI70-O% M&'J6SYL&J3>PVGO$Y>"@JS! M&%K?>#6(8-K7,:/(8P*C9WT-EB_H&7*+P !:7Y7E!8!6N4M@+*WOUIKV 0-, MQ@##]^L$*FJUP[!Y0+4O0DXKEP4XP-XS':\%' >@M@@S]4SCZPE/F]AD7VPU M'4'9-+[6JVJ-W6#9/ W+%R-OJS,&G);GBW>R!0Z*%7RICO@_CH/$$CMX_+IG MYL,>X-.%S_=P6$P?O6X3ZSRS''8#L5UMI?X,AU,_5P 92CW8#:?/?YWEC?9G M5!R/M&V);?,R%KY8%;O!<6RE^KPR6G;SBH:M-@K7'*9SJ>H(WDO+FL;PMV(= M\SS0G:43?"=#W9L*NK""E.$&49$A,:7\65[KZ*8.U? CN:Y#3UZXLZ.;.SM: MYS#7A&L>I)OMY.93RI7%V^P'&'I^_MUI$ U3+4%J3 ROQ%9 [G$57%6Z?X22 MI!V*3>7RKGA-9B:#TK[">(D!A+^HNV@5'\D:9$K*^<86@]4)KW&=VHJ;03K M/%@%>"9($R0ME,5_#EH,M'D^IXY((V5U3!6"-YXE]!.\H P?!-Z>/8K5*30C M<1JR;>FA+"]VS'(A8PK2EA=9CH6\O[UT>B5SHL4/><[(79'+(/1;>H68 M^J0X 4<=&<9P0\&6)ECH_X+U'K]"U&Z31#:$WZ:"CX>3P%/UT4Z)M*_;!0 MH ^4B=!:=O2.<;1P03TU_:58#1#"!8-&8PP_K@32)IK*<:4_-8U8Z"$\?<@( MZ\9@N8A@\"R:';B'-7-(>A6;#D,*8)[W)<@<6A).XZOJ(:)[_(O)TNS:8Y#U M:%>10V=ZC]'2XUR. &2.BQRS1>#@'&V&F1J0N-\4?S; MP%(;>0<'Q@MEKIW+H;_%)8Y!UY7B&D/1 ,Y:QT9_:](O-*'./SB>(T^(AUHW M+0/J?3D:;2;>]7TLUE5$Q\@YO<04^<)=78,#P-U!7&"/9XU[W6F 5]0P!-$K MSU*/L%LDNCE+6LYHCJ/W$7KV=40;1J,%96L4D:S\M_SV*60PO^4GTS6?^V@LT&V@K8AXYIHN^>>0_GZ>,$B.M?'Z M7D5V-/#:WP%G\Y;W@:V'IOR*T7/)+3:)J;;##!2S:D&F/J'5?J#QS)CO*87Z M8 M,SD&\(;:!0M;"(1>^8S;H^1*=^K1CC]%V+5Z6'_Y(U/"RLH$U%]"B0^0*:Q( M;AU!'R*VVY$9CNDRJ_2J_7<)X6BY9%5X=W2WC?(5CM;H#\HB26Q9X74I\] B ME"41WV6B19RF39U&SNAQY&!R/)_@C.JSH"YG^8$91WQZIDQ\D%=U)$6)H[6OEA0VPX\:V?94NR7F%62RT>Q+E):YC>I77W +AT0=TMI M6CWE,Q(G0X;95DV6L7&??DAGVPS(9^EXTW-DG=TMAWH.T+4)%9V"E3]8^6VL M_.XVD. 1\-\C8!2ZJ)6\,W4XS+9-F)0Z=3,WA"T Y_K43=T@&"P$W/[L9"/# MPTH/F?IB"3ZA2?B$QIB6TV%UK^$LHO&.\@@)$O-*LDQW=6ODW99=6CLMGS6H M);,1K<%*V6O(?-TJDXLK?WW[Y#EE7S/QJE*<[!;I=?5J_WX;)=OYP#U-]*F8 MU!--!;ZE+^I-"5HPN<=)N2/MNM4:N/H8O^]IO\'[8R$EE.KZ4>M):D=K6+2\ M&]NFY<;3PF[9:(MS=LN78D5^P>H+R]1=7M]N.M%9_#BN68C5DPK>(0LB[QZO M=@>-Z<]ZG*$N#]#N'!:3>^HS(O9K-X]A&# 8PJ>H2SDXD8*1VW\CMTL#S61M M5,,;:*I+W<7S63[&\#6KX]D[?JF'IE]-L >KZ(BKLG:L%.<"]3*;I@D*9=8JTG(QX8/9_*M+=7T\&P65=LG]SNI3+=N'7]_"BU MK-W;JK0JE*;T 64QEFG&D5@7"HW85D8;O6R6T.(N7Q1IA*JL MG*;>(5?D.'(@N9U.\#'UZF-26BQ\+%^5A#IF)FD"[!;Q#\!FW\!LX.ON!:"*Z%X%H(K@6SVM],\O2.<;08P46# MXW(;="033CTUH0^T5,I"WVZ#D1HGFVF1;LV4/T4+1%ATC]("2YEM03)!,4%I M1#(NX"OO7CWX=A: M6#!B]FK$O*J8Y#?Y5N:+\@K+]0;G5>F_)<,E!]09'$$=H^R="X.K>]X$F5Z' M6C*.RR6;+\0V19(V&"EJQ%BMYWPNWD?)\B?;IS__%Q'$L7BUO93YCYH*^7:= MAYK7YXK])'.>,_Q7(>\M@DW*U'.8&5UDFR+G);P?M(5+ #V&F4$=KMKK)"QZ M#CXC_G8I6,_-.,;PL[S>;]PP%@1T#?;Q8!]O8Q\?0#H)EO+CL91;"CNTDQW> M0_",0I4!.>VY[PM>9I^$M9CJB]6]0U;22R*^ &;%2V ]SA=T.MC63>I5#WZ= MD3%2=[[BJ7AI1N@KOL?LCHZ[@GH+>UA_^\T8<6MND';KMOHYXK+LO=".A )5 MTI=QM,MG?O&!YPW]3RV>X,B1U)K"X!'JU2-T)MX_W6(\RQ*QB/#NTTU.XS_G M&_EJ-&7)[;KVZ1)JP64@WTYK+G88B1S+8);]%24X.3T@\.Q1_JF+)S=W'L@5 M,WM ++D53]0X)VK;."ZLLE[3K%P"6LNOLIU3:JNK?YX/6_G45W? O:(;T&,, M,]"Z%$!]'%>PYSDCL5QYDB.^9D0HWS=?M1P$ZN/6"(]3,=SR$\Z$M)J*0V&6 MK$E&!)D"WWN\VSZX=E:-QG [R]J]<<:8O)>L-)N<;)_;7*&M_*[V_2H0#:4[:;.D=98+J>*NR.7QK': =#1P,&*ZMZ*VCF=O^]6 MQZQ:'%_*M3%??"1IL3^/^;S(Q3K+Y*5=BHE8CA)]&--RWFH/31J77*,]4]:[,S>L8P6J*XEP/[L5SD5-([18-%2WG%L MN?@^2F6!=U[]TR;B%C*4*SL"F)1@#AC(' !X0S"M'ORJ766]EXG"^%)2@\WLU6'SD?"R/MFU6"-7F,7X;\O+'#1.?K=DZIG6_*M+#=>]7 MJFXX(+V&K5;?>$"Z&^]%ML,,M$:U9,+W(]MA!IKMS4H<S4P4ZML!T:Q&=?P%!/D[94P7U9.-8( M:0U'OD21@E QZ72^Q)."P#!(96 LK"O[CQ +DZ("!L/ZXM\!?%4@1)16)3 4 M\%M\Q\L7$(,*&!#K^WE'"(B%,1^,RR_6:P8SUP'IUN#8&V_ >/WJ"UYMS5UP MB$H_P7X6L:E=DJ$B(: L/RNCN6?U';71-*RRL0Q&T<)#!>1"GHZ[V M!6GOMB)4'!?K(I40SO,59C)?BN&5 )CS^*/@>9_; M,B.:,(>!J A(]TW%4'=@-Y_F07+X " W>KI39,_* T_23#,Q06U]+&U;IU1_ MP7EU8%Q2KG+(UK9QZ]E7G'*2($'=?'&+'J^DR5G(SR\BH:]*^57EZ.]F5,<% M]W+!*C@Y0TRJ9?J:=/K&[HO/ 9+1WH9?_S Q>G\,SW%R@WQ.XP 8,[\[U%LQE-MIY=\IK MT1HD=*"',/M?*X@SO)12[R@/@2[\?SW$XX\?N:%CB/H+]A_CCM#$E=5?>/^$ M$-+Y3'J,YA\C0IV& /48V#]&[#1A87 DO% 3!HW2A6-MK6-4VNI9-LK#UAAY M!0?&6IT8-S!&)Z:S=)JJ[LK[B.-E^9GAC=Q,Q;N2=<(Y2C&/[K;1&K$_<>.R MI@V'=U7JM!5YH?QI-^5/ZQWRG.4'SGCQZ9DR\>$_G]$?E)V*G5V<<:PNHE#? MJ'?ZY*68\\4+ FI?*JAM!\5D9YA1OD$Q_BCVTHPKDV%F M"9.<-76W.A !B-P_=9'.!;?_%]02P,$% @ %$@)5Y)$IG$) M#0$ )P<2 !0 !U9G!T,C R,S V,S!?,3!Q+FAT;>R]Z7+;2+(V_'^NHC[- MS&D[@I0)[I3=BJ VMZ:MY4CTS)GOCP,$2B*F08"-19;FZM^L L!- F"A97I M:+>Y@$!5Y9-[5>:7B3/5R>M4-^Q?CR:.,SOY].GGSY_'/UO'IO7\21H,!I]> MV35'WD4G%GU:N?!U;.G\TF:CT?T$WP87LB]4;7[MZG7>E\&EAJPI]NJ5-E6. MG\V73_PK^$VSM7Q?+7((K4^:83NRH=#Y];8:-C.X5OKT?S??'I4)G=_RR_Z]>)U^I02W9H2H9 MOY&1!\0+ "*Y-RU'UDF=]#_U^>A([Z31.VGUR?T-J=>].TRI(Q,VQCK]T]5> M?CTZ-PV'&DY]!.,[(HKW[M)*JV3-=AIL:ID'9=]KK"1L2 MM;R7FJI2X_0O[#5<<>M.J:4IWF1>G0>F*=4?;$78VCPK*^_T[OAEIPWX,Y#:4J?[Y=/*,,0,ZX$^ M:S93/\XM?!,UJK6K3K]?W9/1Y?EOMW??[KY>7SZ2Z]MSP<,;3JFAPE_G2I>? MCXBG''\] FUZ,C9!5&>@&\<71: MKTM-4$Z"GW=A*NYT_L![N(6I7L%G]M'I_S93?1:;G/\D=GG4LZXL66&F"<>' M(C6D9K_7Z;6/5AZNK3S1-33OX^^/%\'S?1EWM.^O18?+[G[+NTL6O_ $W5GG(<*>JZ:A4T:8RR&+_ M!>B9Z]LK$#K'#6FW^?0;<5>[)/.18M$GQDSX)?;0=2:F!3I-338#J09Z@/W= M<1K-6&0I_#1:8JEQ;=MN@BG46P"E'4<>)B/W($"&(^_M*Z&8'#6-8K!S?U_Q M5*3)Q-,=VZ8AAJ.;C60L/8BG, H^B3VTQ+M))&1M/H%>K=OMUUJ]'9$TV$.N MOAO_G>NP" +SOQ)/HM6O]:7FCI/80\>))H(DU9KM]H[CWT-%I$$$L'UJW7YG MITET&WL@:611V7:M-SX-?T9\,@F9>5#K= 8[#G\/&N0__,%@3;VIWO ;K;K4 M77YYYMJ:06U[J/SI:K;&[C-\U>SZ4'T!W_Z&JAH,^(9.Q]1:FO7E]X=WIHG\ MQOVCD$@<0P>K$RP3#VFN"(7*3(\(#%8-YO++Z/69'W^/U@T[^YI:,%, MGBE# +_LUC04IHY86LTOWY$K>G1*DV;*VO!4CXNP,?P3IU&CNOD_Q:^G5J-W9>)ZET>+K07D 8&6JR M5=K5AV1KU"P=EK)?HU9I,DETH[,UN[-$ 2N$B[6(%L MD<(BWO'ALR'X(9C3J*5H-KT'E9TP9B))TG%G%S>+K4XWWNI$X*9,J]/M'0_Z MNQN&NPB=D!48;U^!\2Z2F)F#TM$J#7L;[,'NL8A46304XOY,1 MW!%F!*?!#W?>:GQEB6;PB[P\Z+^H]CR!M1F^@!OU3/F7+!<[7\=D3-+J'?=W MB9;!XG6%6<9E7[R>="SU=G+/6^NAQB!$$2Q>,UZL:&@XFJKIKJ.]T$<*GC/W MH2]?%=U5J7IEF5.V;*[#5^WNZ5*V#+9M*ECMX91MR4DVZ4&MW]O%;.GWV\UX M9LL6\P0X&^!S]W0WXX$$X_F1/G/_.J%ZV'$.$?9INT1S:,4T'\]-0^$;<-@= MF"%W]G9@RE:T_.$,_PE#M!_I"#9?>4L>/BH3\C 5*O+"2:SLF2.9WUVRV M3%FL)%BS&_D_IA7<)Z,%"],3S071F[A@*POV+A,4%6F[H&/GVK =RYU'ST", MF8;*]SN!H ;/$YP&EEL\MZBJ.?/HF+]TWS2#WCUYWUW)"H]Z>+=QQS:(1MEZ M^^K*3,Z;EA^ BU)(/_XI6YH\UBES4?C78'1.^;M8;M/J7$ A:?;CS**R>FE,YWMX5N_A/7#E(?R];;J6]Y;O5C_Q*<\1$27C M3_UK*=]1%[QCL09'>]*H1?A3:>C6]//KWU=W J[_^#3X:/7N,VX$!.\ 5A;7 M_J>+$0:_6WPW'Z:Z="F;P>(1WC?!^^ AGU;68KXV#$)\83Q]'MQ_RI,F]-1_ M/$^8!+<(O@O>LUN$KG7@P_5A)@588&\+M7.Z&-3\1OXWNZX9RS*LKYB_*?T$ MODN\8 5!Y.J"+8-LQP5[-\<@=U>H.3:#S:-[@V+N/01/47G8\G3I4NX/RJ % M$N+GW>_9AQ?4,*>46GU9'OPV^4;9G_E1>EZWM3&3KN[5Y;Z(5 M;6V:\=>F*7QMUIW-XJU-7)TL;FV6Q>4/OJN-67.7?[KL- +XTJ;!-T)[*?+Y M;I.E?2:^K9CR6OI+XGF-WEL5'O8ZTS5%\XUCHH+Y:MA@*2[%4S;-Z(@?C3G9 M-*\OGT(?-5_:^8BR5 4)Z3=459ZAE_5[65.OC7-YICGSO0TE)6 0&-HTMRH1 M\8$Z,OB :A#:J@3UPB=5);(-%<6=NCIS[.^<"0MO3,%7GK#U>J'7;/\,K00E M8\^S2L0-V0)8"6)&SJOPQ N)PK30P$G;P-DCPM1:HON^EO[.=$?#Z(")CP;5 M09$;#;$4#;&R@@(-N"H2O6CQO5S61D/S-X?XWAK]]G5#T8S-([Z7"Q'1'"TE MV="LS":^EPMQT3PL,O$*8.:E,L>(W0YHQ&4:P\QI)\?.=$?C[X")CT;C09$; MC0J)=G0=,HL3I<]<=$$ M*B3Q)#Q=D*U5(XG=!!N/?FC55("(:-64DFQHU61CU>1"7+1JBDR\8F4?QH MLM5HQ&49P\ROWN-N=$?C[X")CT;C09$;C0J)=G0=,HL3I<]<=$$*C+Q"A>G$S3'J'Y\9ZX-LM2VAPH0 MU^9:T5?_+S+KB*9J2M&5?L04?'LM9"*IV>29=?R*T7D%*9O?CA'!10KB\NR% M;%> K.NS.&QN19H6GT\#^Z%7;W9_>&;KW&8ZDW794.CCA%)G:*@+S_-"LQ7= M9+W;[+,W>#,S;5G_:IGNS(9;Z"Z+*K!KX#F:X8*!/*->HU;/BKPQ==:-68-5 M"Y;^YFK$>YMR>_J!ROJES49Q;5R;/^5BHR>;1?/!F&SITK-B&6P$6K'%1^'" M07I4J"'##+WVNL$;]3^N[;"O$;1I@7;K)&W+.0DET\+ABZ)7X3GEO0[VS@@6 MFFF0"PHANI-;&RNG!I-V>.9-PH/;K_:%G<'+X/>[=2OFNX&D+GJ,@C>124F% MU9S5]7O+A.$Y;XC!O3 X=ZFB5A:1QWY_:S*?>5'[43&Q4M[MIJI7!&H>J N*>2%-A=!4BA^^DO8*7^W#I\P6H\K$7Y%K M0RDS:2,F4T&NW2'%C10N6\([JGL&&*NJJSAWUB.U7C2%/(-'7->!X:ZHVL3,"L ML H:0MM 4F;U1,[C@!4FTK:Z6A1I6UW5BK2MKKZ]-)YA(>#F?%TNZ O5S5EQ M=YINH?"6V1RP[D4Z'X8>1CH?ADY&.E=./U_)FO5/67?IV1O/2B_2^Q?TB5H6 MV\S]0@VWX)4.(J<1)//")E-!S1PBL9'"59/5Z[874KA25E>(-D8*5T4/:Q&B M>?[R-UAAV5(F;]^80<)I//_NVIBYCLV_: 4;]A:WN/&.G[#%N++HGRXUE+?5 MWR]=83]0Q;6LPM>"B[=$BY3&AK6*!%*2P40M=LA(-JRZ2&RGU]4X.)B)<$6X MI@'7INA6CAYL*0=,[D!OF_[1\V@VA(\"P)GHJ9N6N)-21GQ:):_&!#L[G\,N[I MDA^CMQF]>QI:EFP\<[-U]72:]\M*G%"+#838SPM=._]IFU5%X (BGBXCG7R[^"GNU7V"#%$AC]E2V6+O5Z4W\?P6OF>;Z8BSP'_ M2'6V@^0K-<"/U'DUGZEF:+;#"O.\T,O7&5"5%AS8*PNP\#K?K<3^D-ZPE$M% MLW99TVK92U%9!(0H0C3,E2_0YA.$*$*T2%9K2*8.(8H0#96BQ=GRLPK1R^E, M-]\HA:4!@Y_Z[[S&2C.VGH<*7+Y%+-[B'!26"VRT(I81RU6Q;A'+B.6JF,&( M9<1R5>SE!PIKH2D.53F)OAN:8S\\?C]4!,^;06Y8E8.";H'-8X0N0K>DUC!" M%Z%;4N,7H8O0+8VM6WDXE@@8A;(D$1C% 4:A[#0$1G& 42@K"(%1'&#DV8_7 M.X&5*"!<5,JG$<9-0.+TCM")RDXA IW4)V+1RU!1V3TY"A,Y/(X@]' M=>N-WO++D>;H].[IVE"U%TUU9>_T_85F4<4QK6+2BY7D"AWWT2G[:G7P:3(? M6\'8HK8AK($DTDX 5S6$-:J"VX'EU-Y.F7N+VGSM0)B<3S3Z=/E*%9=9\'=/ M3YI"RT9#]83G MRG@+8G2F'#A<(I;\6BYB+8^W6L32D)UR*K*%;)R5JYVK1J%,PM[C0L>B- M.Q'*0MB]=E64*_2,]"J_98$4+;-21'J55PN9J M,!_>OR1X65'"QIII]3@6"5QQ#OY&99M.3+VR CEZ?M7C5B1FA3ASWJYS^?L* M$7/#_*K'F4C,"G'FE6N!F^Y:]$I[9?_8+)UM3F>N0ZU*B%L6IH\QR>JQ*5*V MJCQ[;L+#+%=A":9K W[Q#!.O!$GG!0ZC)U@]1D5REH8[SV28KT(?)Y2N'L)Z MT)XGSMW3=YOR9GP%IU[4-'RA&CZ94JKT/,4]Y&^:/-9TS=&H?>Y:5N$] MC2T$VSBGBG 8TJT:_,9ZEE20=.O3JBC7(?6*P7M1U6' *%9@,!:?\(-F_W'V M=D8-93*5K3^\<_VR3FV_>_,M]><5]K.%(^':CCFEUKMK_-]^I6!YR[.)IERP M0_/:V)VC)_RK*].BVG/!]V5N6\BE^@%A*QH)H'T&$.(#;:;-_J.()NYB$#&H M+)*?"E*!)V07)#(?,M^!,5]^Q6S6RU\A\R'S'1+SY5=B+&3W,3(?,M^!,5]Q M*H)FSWS(/7EP#_I*"-I#!&U^!1'RE[0_;N3_F%9PD_$ M_3KY_ CT.R*BV$<.0@XJ*@<==)P+.0@Y"(-5R$'(0;ER4'X1IYVMN*&BF*[A M !@4JKW(8YVB_SX[B5J5@K-(>Z'J\NDWW*N4A+WX68NPY2P[8Y5EHU*Y/ ;D/.2\JG!>KCIO?>-*B!5W M0U5-D?5B GVCW;(R\@INFPAQ6)%^)?+=0FQ.I%]9+1>D7QD3EC'TWY!:ICV3 M%7I!GUB#[Q(2,GP*!ZL1D:)5TY%(T:II3:1HY?2H"V],UJ&TC+1<&_SAZDZD M8A7T)5*Q"CH2J5@!O7AMJ"Z+.-;&NE^!^NS-6R==M@,*.U37J>*XLAY4 MC1]9,A!#GK*^V6>6;*C^'H!%O_9_45;9FJK#%VK)SP4UKX+D]0[+,8=,[$6) MA%$LT*ZUE0]=5I% 3:\ ;A+LL6*QYG1&'3I\MNARBZW#@)K_H^AE0' E!U>@ M"KYI]D&B*F3^"*=,]&0U8"1*#Y:>\M'BN1J$3JZ%2D_:$!E9*9KNH@,*14R) M;>1L-G]=U>RPKH4O'FW<<>VIFJR]?;5E4&,.6;13P^_7PM?2N^T(LEM@'EGW(@E M#483N; I0<_'2A6@]X-M-'>H-64/GV_-A\>Z<)<1?/[-E N^H[ZZ*(W_Z! B M+A;A/2G+Q1=A@/9F]4!?3/U%,YY7+_&AC:)\Z>!')"QCK.3^ *TNCQ:%8]1E MCD'F0>:I*/.L)#[6V&=3XF/MTGV362&3P+'I=?D<7R8T\CCP.7]];0%AD9&3D54;VOUE#1[48 M=B7I@O[I(3!;H5)$\RI4[S&S.982&F-?7JQBPRN4H/YW*8<^(@+;(7@K(Y!" M9%C)4RZ9I!F24>/+)^WUQ**VZ5H*M8$X[/V$RBH?D*J]G)*_$/*%O8!_"?F? MO[[*C<_\L]5OO\R([;SIL.A/<.OZDSS5]+>37T:P3#:YI3_)@SF5C5\^\V]M M[;_T1&K,'._M"]/M9,T[8UT>GW@._?)K!H\*?L?:(.$]@ M4Z_+NO9LG+!:3M1:?B;_4C,8($X&? S?;Z]'EQ?D<30<73Z2Q\OS[P_7HVMX M.;R]()?_=_[;\/;K)3F_N[FY?GR\OKO-FPCF1B<@CXB/^ M@3Y%GJ8X.I4:]?_E++"XX2D@?7PJ>&KI+][*$S[V(C.Z8 M>!B!#"!2B]P]$*GS0?U([J[(Z+?+9(O._'7G2PO?(>).+*\\B18^BO3(LZ$DC^#%2:>$B'< M<"9?[)EL!&/E-U#!L/;JXIT0%ZX!16/0SV2!CAZ&MX_77*I6 M0."VWPMO,USB0N$^6.24_X ]Q3/YOJ6$(3S@WIU/-9OX3N=)T2H#@ MX .=$$%"]Y+[3.S.WHUCPK#18'&Y;KN_29;F:@F*AJ6/1$_B$5_D'>VH^[Y? MW9,152:&J9O/&K5KY-I0CM-;LRU"^L/EJZPX' W$?"(6?6:U[XB&&N$? MUX@-"'X*P<9/374F[$WC[P$DZCI]^5-H^ SRSSA=TGMOUY077Y)]BKV\3EET^.B@062^"1 M_'KM!RT5_O/=-%T;O#RI/>@UXM'NDV.=_@7Y/A58?.#L2<#X,UE9!/(?U])L M55.X 0@*3%MF97Z9]2P;VG_Y^X_(8$LK>7W\C([LJ3S^'EG34R?\;56K"P8]=Z8]YKTF=RCKVS[D%A G?&C2[?#-_'EF,] M[MX$_:S__]K,4][Q)+PTZ+P3[C7R_7$8TS#/"(P?_#DR23>S8#6UF:P3^DH5 MEQ5=@X^!?:G]D7R ^1.V !M-]8Q&75)>_A")-\9%0XO*.R!LT'OG)W^,!O0W M$_31_<0T=G/)6QVV3Z:QU4S)&<0/F,S908?*HUIL)UEWEV!*QE M&6:.*%X9R(^X?PHPU@]7<"G8%@S:->Y(P1O9$V(U(AMJ\-F39@/D"8OH P*> M6*3!>*9@HS&50739=HC%8Z@;H5"&:!X_\:,Y&MS$B[90"^8YO=&V)];#J..06XSEZ);>J:2JSG\8=&C;#_/GXFZT;^5%-5 MG<[M_%8+['S_5F#_+]]GK,O*'_,OO:#/^K>1EKWX8-A(JJ.R,B$*JY\0 MZM7XXPT"5[/7^13X!2?>^.=/S_[[: [;]GN@J6S#7$X]MT;.H? M['#/+F-L^.&_',%QZX=Q.3;HJR=$OXPM\NF4@$#Y.='@\X74"8E9"%B^9?]Y M>>UR9YU(<\L7R6]2<\S9*Z:YQ?(RL*J/CJG\\=[D$H?'E05M;UO0XJ Q1ZR9*-@I6'T[?+P8OM_= MQ:%.V 8IZI!OQ]^.SX^+'"+:UU2[-EBO+ ?LH#>R1F65+ M";,/TD-_>6 MK,2 M,P$9%^S;#Q1X5O0?^S2F445RK6AU"1\:XQ-/L#] 3$=D'@V^Q4%HS7 MSX\[$]E9'_M/>764;(C>C_TY?/2L]0]-;XYC@!)\/_X/S(!=SR^%'[%1^/?A MQ;CX(/@@F04_:!!5?K./2VW"+[;A-3=+.2\J=>Y:%JR$MP&$"3U'=EP[)AO^ MF]KO>##8;N?O+E[YY]:<[T3TMXB4>*%W9D &3,#D5',<0#%E-0 MTV!"7G\C M% 3^&V'% 2U9X<&R"]F1O0T5:_RYN,>R5_;@PI7M1H>QX -]=G4O3/Y8'Y$/ M;"5ZGYNMYK%_@3/1>+9\QK+E:3.K-]XY#U+[XT%QV!)-&4E]AD,.2X'# -0R MT>'WE,B* AQFL;-@''064Q"AGQ)8VWK(%S8,!E[X&H:Q!*OE*!MO-:8-X6:@ M0MA(G\FS9?YT)L'7QZ <*1^92I]8A4%@0QX19S1I2,KGJ %ZWZN?YQ?&N"1Z MD/-+F5X,+H\8\OQ:S>!RQ*,KN!OU9J#PE[5\ENQ;FD#/FL'N.^G>O3O=8\'Q MAY4%^\8 Y:W:$F2\#SAN0F3"EBPS\L;?;Q]T4QQYCVY]U#M-Y-JVW$,>! M7\3GJ/@7Q?8AAJ%+%;YK=7&&8&-$(G(14P; ;9@$*S#1'SVIY8UP+KJ\MPN1 MQ(3 9G3P^YRYMF90VTYW]_*^E ^$6C$(O#;K_RGY]XO,U[\*CGQ M3QML"99M##6 M*]T77!M^"KSJXX MP(H&#[-_/;J^O5H]%&>X4]5T_ M62124"^@#B8Y.>[5NJU_K2\V ,,$H3X%C MV%A6#P%X?LO@LTV6H;LL^4K57KSDZ*]']U_/?I^[+;MNY#]BI_97[W8U>IC?+FR;Y=(CCN9G M_H.?3Y[JH("\S]>_8)X6N?]Z^_WF:+F +]R44 @>+5X,9GO-+X??KVLGSU< M#G^O#Z]&EP\G1-9_RF]VD,U@6S<,NG:<84*]V399CMC/ _^UP?_ [V3E#U"9 MKJ'65[\Z8CG%]:7Y[2)\:=@*[[LPH[OS;YKQQRY+X_V[6GQ!'"K6[[?CY,.G MS[]8+AVQ/,&PN49M*7['3ULW$D?NYF$36&6O6%4NO!%G5^ @ZF15L.DM_6V7"WV'=886H^;8:A^ "ZEY_I'#^+07@N8Z47Z]TFT)BS MGX^]=41 O'NOI;CS:*49%I3)Q&+VX5_O%^-AYGX=ILULPA/Z.M'&&KOV?O@P M(M>D3JZN;X>WY]?#;P0LT+N'F^&(%_"1E^(' H$I![H1;$[/*EH:\FG+>^Y! MP3!8FAU1N/_D=YAP!GB]WHK8:X=.B72\+S3[O<+,Z&H>(>+':?CF"@& MQH3G)BM"P@*V\(KO!N39(/\FY)'?Q ]]_,,UZ+S<$,\17U#%*X?8\N(A3?+! M-617U> >'RO-RVNKG ]7'[0"+RE[LIBT12>L>.@+_<'.=K/=K8F8=*$V&7>N MW)C%">#&\[V*(W@ZY2S[J+V2&V^3UB5/\+SC:F^]ES\^'+8.I1/":SQG,#%UE5IVD% @WOW38[GJ<9M/D=,.\E<%^.M< MMB<_GG3S9U*CW(%;O=G*60D:+4UF+I3[O(3&5@IOPMT5O3H5M9E5_$ M]N;P+>G:E$3P[L$%<[S5.^TAMQUVX+89*W#;+%'@=NN,;F1#?N8L_HM-+C1; M<;U*KLS6'1JR_F9K7(,O9 (3&MX>0G;- [5=W5/R=S/JY>6J+2SXJIXV&QCZ M11F3@"-;L61,JT0R9NN,_I?M"=; E&#!+"8TX ,]>,]DCF[:+MO<-QR;KA.< MWW[0[#^J+DA:($AR<9A1D)1>D+1C"9)VB03)UAF!Z>%88"]S(7)OF0I5F=RH MNI1HHY3(2DJ48D?45J/>VQ'%MD3=C7Z[?,A[.U1S@5]TJPO&MQF@M7+[H6+, MZ!M]!E>9JRA>3J/B.HJM".HHE \)N6D83T ,RR0AMLZ)^;?D"CXSK>I+AR&( MAUR262@>2B\>JA:5CS&C[\92[>5'6?<.OOJ;4I9J[S$_^+O-:ZKZMD;E14D3 M)0E*DH1\5[78>XP97= GF2?HW!D['T\-S;26)$C5I44+I05*BX2\5;4 >XP9 MW6@&!7OCB8*9L928J[J4:*.40"F1D*E:D5?Y@5;V9L\JUVE78 LM\<*KB&W=D,N ?T[;BTN MZ#-!1+&X? L#OIO9#N7Q-L\KM B>.*K\9?71:T7MHK]-1V:.F=C05)@5R'"' M-2?S7OJ2!*X ^>!M1SHAK*K;O);J3O^'YT04=UK4B4M_AM?+<[Q>G^7UZ/*& M2">")ODX&L+]+F]'CRMSS(;&,>KZ>6NR7I_$7YV@XDCP\Y'F"VPAPG[7A/&:YN89??(L?]?<$"=2PFOERE\R@ZQ>W(C^!O2?V./%8J[ M'@B&3,&P4D3K/?VS'@ZKF5 T% ;M4[(1AX'EWFODYF#/J[,"08:VO6Q0I,B7 M N[X93R_Z?CTL&^,BQMZXYB\'.*-,P'1;+1KI-GJP_\ZG8_B#*"LN/SHU&_F M2&3.UB<4].[70XDY:44]?*YO!J5&SKK,)>L$ZU+[+N%;D)X=_ M-_S[/D9L%'F%W/R]A7QT^K>H)S5#\SB"G[[>8XC%BA2I(37[O8XT".\ Q#LS M+;H*?7^\./)[$[EV_5F69R>,;D-#9?]<+H@V=,YERV+]R_[)FOW,6Q2U-O8@ M6G0KJK>.3CNUYD!ZUW,H,V*EB T$WAQXS48(\)IUJ5EO27D!KUUK=PH"O(.V MY=8TQ .X\4#FL<["TP9U2JH8MMT\?Y:4DNJ"H=>(TEY0ZI8Z\][JNW)B^^BT MVZXU!HUBL")B3"3&FDG%OEB,,3.C4Y.D7C$PA@[!0MQ?&R] 4M/B!V)0TJ?" MA:VDDCX@SALP7R*NZ[9JC?:@&%R'F!*)J792R;XWICJM6J?5+0:FT'!?2/)[ MB\YD327T=<:V=7@GI$U^7D%9B=665,Y'9]S&.I"W"#R[?8@;>;J35$_XI+_T M*+^/F=:N==NY.>7[4ABQFQ]VNTGUD3CLMFK-]OONZ87$+GH@[&^SQQ\[,AU9 MK[J.BK4WJ1#LOC;2C5S?2QS#XE3>A]NE5J_6Z&6EJ^*M5I5O8\';U 5I,2> MB?/9%SZMSI=(Q1QJCUD3)K8'[4XQ^!)!)A)DB1//J8!,:J/57PCA_\" R)I# MN#8M=TZY^"RX>Q;X:>:<^#VSC>>AH7HMMNDW*MO4YJ0SGX!P>[ B>."#5D'" MIH@VD6C;/5&;"=JDHKB8AV[V!WJ=: :8^I0X\BN>;4B-&Q,G8P,R77,JC>37 MN2>>C -K@V9!-J4CP 0"K)TX$RL<8&VT[8LAX;TF#*4VZ@]L=UT[<6*7T]KG M7--0]MAEU^]DQ;ZX6;3J<$Z<5A8'YU:MF]DIO$)L&2VW8Q)^Z*'<.FPK<[4 M**KILM3[&G?E62HG_B@WRH#$B>X]X@RM0:\V&&05UHJY3I529(>-Z<0)]7TP MW>O7I+)A6KP+MH;J?-X>M(J.+EW\39/'FK[H._[HF,H?$U,')-E^TXMF0QJP M-A9^IW(L,>BWO&@%?A:09R@AAV9R6^L@EUE MW.PB5YIM)R\)X)/KWJ/6/@>JFYV:U,3=?E6'6O(C^^*@)@UJ@XIL^%ZSU8*. M85^O_O'O=OWBZCM^ M%Y=W:[VB',)&@ D$6"?Q]A*Q &NVP&(I",#0AU@(^OEF0HN^4,,MJP]1?#Y, MO$'D''[%[O@OS9F?+Q.4"?%=\?M!C3U=<0JN_@NA*7"= ++JD6K=?C3A/I4S] M8)N'9MB.K.NL8*?-J@?HIO%<=Z@U!3*.RUHTK/+=)SJ)D\[?@+XC(.\%4#9!]]HY-9!$?NFE!>YB7/8!XA2-RN>6XW0H+[K7*LM^WHE M56L%8/ MG)LXK[]LW^YS5+[+.];F:..65\L4'UV)4_DBT245!UT'G;OYC+7? MLN6^Q!40WI7F6C+3DM;G:F=6W@V_ MV$'#(K*:S:PR(87(DI?;2PK?](5J MK6S\GSS'OB!UPK97O5JOD96/A8JLZD!.GL[?%\CM1JW;+A>0T<5+T\4[-Z=3 MS?'. ;&2SPR7FO%,#25*+XJ7(86\HSV3C>!V=9LJ=>VU/M%4E1HG82W3'.XGW8KY:%#WAAG^3,VV7:J6-(Y0 +]J MB\.4^-SS'/E,36,GC=GOQ=0D?1$:,Z9Z'H!Z;C;$JLP!:.M>K=OM MUUJ]8!H\?!#KQRW^8S"N^E(S5(_R6YFN8SOP0C.>:P2^FU%@EA>JO]6([)!_ MN 8EK0; #S1!S$$W^7,EJ=9LMW<>=)O]&,R46K??23KH"ZK0Z9A:I"7Q@3?1 M8$A'OO<3[]OUN'Z[<-\89NUA9:T*8BKQGMQ*80K]ZH5?/?3C_K(.REM3P8(@ MBCS3'%E'P9X.$PZ2%T^2'5MG'N$2M;*M5OK=K!F;@7AE;QZHBAXM3F\ M&CT\:5TX%] HDN?0D-%<:>N+CM4O:!/ MFJ(EK)7;;->:4D$.Q2+41$(M<20P+:@UFC700\6 &AK[2\;^@K[$Y ,+"K;KO7F98]8 MZ%\Q;?AEC$Q#MQ%O.T*W 9YB.;Y5#BLP\! M%'GXV8M$)P]"=_JY'32/O8XEU(,'A^;$!R .%>#=A3# MCI]SSVQ9M_U2>VOQ5()$2/\>Z[YZ2OQ 0 M_:KVXKU:54[O5$ZL\:^JH6 $L[ '^/=;N]'GQTG:_L_(?XJFY"B:RP M/)ELO+&>)(;I,'UGP<> (X#-L\4WSUD.ZT+I3*A-&9Q4:MB\SK'![0N>PT[@;"!_S(^G&ZPU];(B!&4#[@_NO9[T?K8&HT_A[&9_XGG(7Y1T?\=FOW MN_U^,[_A,N_UX=7H\N&$R/I/^>&TS'H\[:G")9QE^<7]86YQ2X'Q9$CS.^9\)C=5)>9FU/,;[X=H 6:Z M-ECS-N_#1&<.F5'+2\@0&+O\,?-!?3=D5]5@U3)_=!S]D@HW>A*!:U%?>/UZ MQ-*X5-=GK%*+\3Q_;\]D9?[>$T2@9D;LI^'2?0_MNW+&K $2TU<#,%2N^+TW M9+MC'/R.72OZV'PV=P9]P%*5OQYU-ZH\L6GJ3(7Q&$P?BU)R S^?V.02R*XR MH43FDBG#Y49"[D/(1^WU'1DSIJ+G(:" 2!-7L>/!&<,OV,.1,NR2!.X1"X@% ME%0^.IL'CTX6YBXN,A$'&>*@B3A '* \0!P47Q[L:+'$W6$G=GI^#*K3_'NF M.Q5NJ4-L65\N!!PR+_$IVK0>$A9-^-N6)PY$)X??IW6W9%C7CCZI_GZ"=KTA M[7 N]H4:+KVRS.DYW(L]YU^:,SEW;0 UM:X-17=99'1HVQ3^4Q.>A#J56)6I M5L2VVBS)F@&:$+)1D)4:(9!M+B#;+!)D!^U:JQW11!41>RB(E<*%K%0X( AC1 !D &R((!.@+<&L$,(+4&M78[HGHF M2U U#N@*\))$U;M2); S.51A\?0'.QM[@:]=:S:QM*P1?_N"+2!+O9.CO M"[Y.O]9J1U3 1/!5%WS-B'3O3C;VON!K2[5VIY ;#S#!L-90F.HZ[X_U3 W* MCG__CSR=?2:R.M4,S78LF77,(O1UQHY^5B4#41I>CDB$[V1"^Q3^ZM$77.;A M"FTO/=(F])UKS4'6X5/4,?GC,B+;O9-UG2XN&[VL0SJ(R_QQ&9%CW-=>'RI^N9O/F9KR*/5KD&7-R M1 YW)XO\S+4U@]KVN3D=:X;,'K)$UP?*^U2P-)9(; S!^8$?F_G8QQ%)6(2'&(C$@*[F2&IRPJI5I#PL!Y"2SQ\XEL M/+.ZC>1)UBSRPAJ?L)WZ#&#@IE'#X153-95:'"1HJ&?+ZR(.ZH;P^OF/:&$X!_<[=4\1/@I++;U(R03$HI,..J$X3U2T19WF+C.IN MK=% 7^'P<"WBQ&^1<=VJ-3H2XOK@<"WB6'"1<5U8>8V)@U5WA;4W)A^>9!DOT;M4N8Y<3R 5EV6V-CLMB7B$')Z/ 'Z5!KD'O[; ML1\N\D$A^6 C&X@XBIR-:LB:&U U5)34U4-S4;N>ZV3J0;,'46? M4+Z;<4_<>/9;@%7$Y2I-A$;$*>4Y#;V&9TP ),OI]&H-W"IS@" 4<5I9& B; MX(/DKFB*A(\# :&(4\NB0-@N*.*P<$'*OTY^U1K^07(OX2Q5_(@XEB\!?KX4- M# X/?2*.'HN1?H,.[@P]//R).&*\-_[:7/MV"]D- X/0JS;SG3.A%OG@19T_ M5JW$SX$FL=HBSB=S9-R:AKGJ1^\C%9JYBP3#FSR1$[+1 R+.>:>@!PY]_TXUT@UK^W<\6) Q!1A0 M?P\/<>37P*&JB#]5FCB(B'/?B[QAT(M1,UP0 7YBT33L,TYN[[J1_$KMRU?' MDH&W-$.VWJX=.K5!=K"!6"8OVQ:$5A(:D+5!#X/*!P?FCHCCWH4#LU3K-A', MAP=F$6>\BP;F9J_6[V*ZY?# +.)@=]' +/5JO48AP8RYF_7]3A5U,Z+]T[$. M-"V0?-@^THWR0\39[+E<\(,29]2@B3JVM(].V[7&H, YFIVHCS@O#LY%G+<6 MAG-FL-6Z@]Q;LB'.*X=S$0>J1>*\6VOFW_T-<5XYG(LX)"T2YZW:H)E[8;4D MU,><2G1.Y98ZU3H-O1TR+8",:KICG:YGXOZ60!Y@/- 5<P'X"+CXM_F _ Q4_P -PN$QU; M/I-M3:EL6#D''VEGWR=LZ]RV,/ ]M1Z9C;/N UW*EJ$9SW;P/:?NW!=JQ/2% MKF^OP!DZSOR$VD&Y^66 9MBNK&W1V4R@*15R6R9",SMHAFVDVA8US0":S>-^ M[MNI$)KY0C-L[].V8&8F4C/S-"\6[]S3.K_0=->A*MKG.;)SV!8O4?:Y3]_$ M%GJGB R-X,P.G&%[B$19Z'N"4\J]R@^",U]PAFWN$66C[P5.L-)SWR2+X,P7 MG&';;D19Z7M*SF*"$Z/H[]+._Z(,:50E,BR"_$P!4=,I:R?,0& 3TW5L1S94 M@ 8FHRO[ %Q\7/S#? N?G[)Z$J&NZJ4C-[AB&/(J42QQMPF0[BW<_.1GIY![)S#P=2@)ZM+P],YM;7;A:9^F M[U@[42$UT#KY%U(K$G@.!*$[]Y[)!Z%H%QTL0G=N$),G0K&#[P$B=.>^+7DB MM)A;\M./MA?C3/A!?YR^@U:,>1[TQY@W6]M^,CX]-ZTBNB78=MT/J_1V M($5O*QQ2*2<6PW8^'4;Q681BP: 8403F$(K (A8+AL6(JB^'4(RU(#'EE# 2A7?&.^.=\6>,&D7O=;PR+0J3)XIK6=10WHAC MR8:M\];$1%;_X]K.E!I.5<)+D4V\UKH0Q-Y,(=2JC3>ZW8W?G7=6AAB_W"!: M2F]:_ O'L;2QZ\ACG8[, M>QENDZQ-7#OK"@,QR55E7["R_/1A(T/MO!&TC Q%;!@&O *WM=:16C" MC:9FK=O)^OR,4(Y8]KW@]=A4W[ROX US3OF;+Y]4[<5[%>H#_;(V]%\^+P;- MQ[SB]?A.C^_SK YLMN$I:P_9^1FC"26RPA)ELO&F&<_@?3EP0_"]B0Q8 V@] M6[).9K+E$/.)@#-OLP8OA@IPH2I[Q5U9F?5_>=(,V5 TN-QVX .6P+6/-P]? M^"(!38BBRS9@\?[KV>]'ZRAK-/X>QJ#^)YSG^$>^I[QZO]OO-_,;+K.J C.E MUF>R\I!P+S= ]SK=CDX]Z+5]G 78(E\F<]?_?OCULG[V<#G\O3Z\&ET^G!!9 M_RF_V0'ZF>MLT+5A3*@WI^;L]3/Q(P-_;? _84$#_ZLC\BEL 7Z[> A= +:2 M*\\-IN-19VU.F7,.>]Q?5H>S;0P)^&II07Q K(SIR_CTB\RE]^6?KN:\'1%' M<]AC@[<3BPGHO\*5G^33[U?W9'1Y_MOMW;>[K]>7CS5R?7M^/*]KD^VXS^?\ M?K[,[X]S+F>BX=$QE3\FI@Y M-DX8:V;#6GP&7Y/O"GF,?H/UP8(+=.U94.U M/V;^].^&[*H:+%;FCPYA 8\-N0;S)09ORJ9079_)*BM[-W]OSV1E_M[C?I#N M(_;3<)&Z6=IMU.5\(AI#&!>]K_,HY93(# MPS%GRQ'NU5[)#=QH8I-+6'25_,,U M*&F!?<1_"[C8:=8I7C";)O4'UKH!R!!"O: "(+,A7YS MHZ$NTKF/%.[IF)#CTR&H:N91R[JWN*4L=8@,5; ''#)#*8H[=769M_ 8,TY" MED*60H(<"D$.0<:-3"<7>^'@?+0YF+J9@2GV!K.,,7?N]8'G@<&4H2=HAR8* MET2$OIT\Z6K-X)R)7< M?H4IC,IV9%'9=JTW5+>5E]C+F=9?T*:O)*@2IQ13 QUOD9:;7(G. N;\9,3& M^'0X-5U6\@^Q@=AX%P209UKZH2<$1RG!<2E;!KA(J%80'2'H\/:BDP_LJ/!' MA A"!*U2Q 9:I8@- 8;'TH;T0F&C#%7]@B!WL_'W3$M -W.9%TV%$IDAUQ0 MA;(F[J0E\:W+S:V4+,_AQI@/Z>7=)6FP5H!7\PX=2LUZ2_HQ/Q[B,1M+19@& M.RTR?-7LNI<Q'=E@R9(;3M*E\XIJ M<]MVT#9_ /?3!G#(@=OE^'UP^"L)?G,ODX?@S1>\@\3@7>PA9WLWK@T_2I<5 M>MM'IZUNK=%K(((/&<&]1B,Q@H-M*T$(,4/!"V.L=08H?:N/W4WE$7L-*;GX M79PXB*J/F)TH7I1+[$H%$,@5**E;$O>MUV@F1G"PW8A#T#.%,_/=F/50 * 6 M!T@'*7U;J6(W->MA(6T[16CL7 %I6UC\;H1O.QJ^V1BQK5ZMT\Z].#*V7]T2 M]UYKO\K59WTL>\6WIC,P&7G/) Q\9\N^VTM1ME*.@;-?7=NV2]4+UX*?W5-+ M,U7/O.+_/V,@.5_"2++>-8,BB@A$=ZKH#BLKF1:ZHU3<>VS_4]9=NANT_TLM M4Y7MR3JJZPCJ@P/U]F:A,4"];^!<"*HWEU^M-3*O1XSPSA_>89T[=X9WXJ@Z M2FN$LU X1_1ZW%%:"XRS(\(1X2(1+H6U:MP9X$-- MES^VP_H-9ACU'ZK_<6V']Q,9F1%QUG!EN0S[!PJCLC6'/E+K15.HQQX/5#&? M#0UM/N2$.)P@)+N[1ZH 60%9H2"L("05G"2M@#R /% 0'A"3.1:3BT"V0+8H M"%L(R3BGE,#8Q1%&3!?E(?EC6DC:.6'^ D4[LD$QV* 9+S>-<"Y8@J221QYN MJ>/E0(A-'4?G8I?E11X>O]N8_A N%S:>NFL*R>_O7_N'"9$KTQK)K__2G D[ M#04W@ \$)E.;4OZ"H@*G\XH$[8W(CI?G+V#VXX':CJ4I#E7Y<[_#0X1KS<6I MU4*J3V2-=*6^D*QW+OD0HUKP4 M "^=/XSG4*+3+&PK!>^M8#ZQRE*L<[OMM9+%%$N6BE/(#H343IC $O"O[$JD M71'*:4*Y)>2$>SIEI!#'B./8.!:2]$ZIM-BXAXYC:6/7D<*<,[7J(.52XV!]@[;,QJWU0J3 Q4 MM%1JU3UBPH>S5V*;NJ9R(C9JA/WW,3=9$&]T1;1[8HX\'_TAENI%&DNA$+A) M:>7# MW/CT3-9YK1G9(3>RI4Q(2X)Y :*^?!J?5B35499\9F)9$.O MUBU"E:GBP$G\W/Y6> "WTP9PU.$N5C&36K9WZV3X[2)X#QN\G<3@W;>BS/[H M;;5KO5X/$7S8".XF1G#B(C+[0[Q6WGL;BS'VNDE%[\"Z\?LC>=% M46%)*H! QBXDV8G??F($[UD]?B_?K0W60R-_H!8'2 I8C<#:=OIH[2M M-'XWP;?;B(9O-D9LNUMK]ZM<#*:2N_JY^JR/66U^7A(F*,Z/@>]LV3 MI+>Z]58CKU+K GO9%E)"(+A3!7=$[C85<.]8_$Q(>RD\>GF H(XX6;P;J%.J MQ"Y07DLU:5 OZ(XR#L0>$><+-X-WJ(KLZ.T1C@G@W-$)> =I77Z9=H1X8CP M9 B/.%6[&\+3J=F.H$90)P-UQ/%6\:!&,9TWV X$T1%G3-<0C:X?[F)/%M"_ M?*66HMF\=RIOFDK,&:.;C1'];!D]HBAR42+Z_)8>,@+(J,D2?\TBB@@$=YK@ M[D640\XJHI^\Z?@R[A,W&T=[KB@/R9\3A"1N]T@#Y,P*&W?5=?NXK>[P.$)( MMC=)Y@"U O) 07A 3')83+H!V0+9HB!L(22IG%*.8A>'&#%=E(?DCVDAF>6$ M*0H4[<@&!6&#>.GG0L.YC+XLGFW 1K?%$ [8:^D0J+Q)!<1+;6.C6T1X61$N M)*>+C6X1XH6%>%](9A<;W2*V"XAM,;G:$C>ZE1#TE00]^EZ'0.5-HDU(PA'[ MW"*\BPGO>(E#U+BX?W[?H#&VND>(>"T7W [?[Q,S>?U_OW_L,U*&DU M*M>^=QU"+8"0:KICG192:$0-;W>I$=$...W"2:+: >?=*CR2$,50PTO#&^L@ MJ#(:16+\YM &*#7.BNA3G'X?AA+V*4:N0JZ*QU41#90S: 0AH(%RM];M9-V= M!UD+62L>:T5T=DZS"86 IGC-=JTI]9&ID*GR8JJ-34\'$2VG,^Z%(; ):N;& MX1XX2K=7:D'X[%!#%Q&ML%.M;U7.5MBHKE!=Q517$3VZ4^X!4JT>W:B?#I*Q M-O!5OQ'1/#QF)Q(!?E*W46OV.V56/,N9.7@]-M4W[RMXPXZ1\3=?/JG:B_:= 0K!S<>1RB$$1'O)HE@/+?0#D" %>T $0>9"?R'SQ:Y=F"D3(=S7[AC' M1%@:JS_4%:,!5A7^6R2ZO,5-36"CA"L.WI&A4F2H12">K2Y!ED*60H(<#D$. M0<:-3"<7>^'@?+0YF+J9@2GV@8B,,>ULR>JU[EC94U1A"J.R#=+SJ&XK+[&7 M4\:_H$U?25 E3BFF!CJ^-2XWN1)O0TL.3T9LC$^'4],U',0&8B,D". =PT)P M(#C>@R,X4(3H0'2\1X=W!H9\8,5*/B)$$")HE2(VT"I%; @P//A.^P)BHPSE MJ8(@=[/Q]PRW-J^7JKJ@"C]^1%H2W[HL5:A<54FZ"O4;4LBQ%ZDN->LMJ03E MI3JMK _,5+@35MC<,C_?M3. FVD#.,4J3@C> P=O6'&_>. M0+&D=DWJ%+*W M&R(X.P2'%=&+A^ <:Q))W4:MW\C]&#IB-U_LAI6JBRE]LZ[\4Y0:YQ7&<&E< MMK RVAE=2J,UL)*W$W5:T#GIHK=PZA>DW95FL/&[T;XAE4T\^&;C>$Z M:-?:[=SK^V%#[2VQ[K6&VEQ]UL>R35GR9CH#.U%F=,-@=[;L&]:EKEEO2'X' M%GC92CGNS7YU;=LN52]<"WYV3RW-5#WSBO__C('D? DCB>1$,44$HCM-=$N- M#-$=I>+>8_N?LNY2@=#&B./A(3NL!=W.R-XW8IX^M+L#!/?A@3NL+=S.X$X< M3!>":HQ.%N4A^<.Y)416"XRO(\(1X4(1WA:!\.2A>'$N)(*Z* _)']2=K$"- M8CIOL!T(HKNQ$%T0QZ]91("682M[7B']6^H0FR& V-1Q="X3B?E$'AZ_VQC6 MSS:K+/5RC^MSZXO%E:Y,:R2__DMS)BS;!S> #T1)BO;1:;, 6R@JD'TN$K0W M(KN?;TQ_J/['M1UV8WMD1@10P]']0&W'TA1PX/ESO\-#[ <*H[,UASY2ZT53 MJ*=,'ZAB/AL:FG7($;&$O9 D[A[)@(+P1+SM2E*M.1CDSR6H,C)3&4TA:> D M^82", 8JBZ(\)']>$),X%I.,0/9 ]B@8>PA)/>]YJ$",TQR!ZH4AA/ ^/'@+ M244GS&F@M$=V*)CGW(R7N"X%KLOK_>(YB>BDBE?R7EFVKXGQ,J8A7G72Z M3.(36&E8?8U]!=J!3E$C5(+*FQ1"O!1Y:MF%*&^:E0N]I<[=$S@%]Z;%QCUT M0'>,7=[Z>F3>@WXQ'+1Y$.';$"XD,[Q'L@ ACA!/&>)"4L1)XOV(;<1VRM@6 MD^L5$[]/">Z;:ZSU\418-5&/SM+E%5+FX M%W_OL#';BU^I,+&@[IQIR8)XHRNBW1-SY/GH#[%4+])8"H7 34I+R-'>Y %Q M$&0+!5=T(PMY"7EI$R\).5&\1^@=F:F8 "[26$K#3$(RM4F"_+&X:',MPEJ_ MTT=V0G9"3P,1B A$!"(""V%2",FM)LP_H&U>3/ 6:2QE8:1VO .W:&9C_X#8 M"8[/Z[UR;V1+F02-L$:YV93]%] HMU7KM%N(X,-&<%BCW)1K^XMHE-NI=;O8 MIOS L1O6*#?[0OX")'$Q]_:5$\JE\=S"^N5F4MH&^^46!ZV%%;P;2W:TP_KE MIE^+'_OE(GZ%B-ZP?KGQ"^^+Z)<[J#5Z68?%<4/_KO%N[)=;2/:-2!&W%YFM M;KW5J$*_W")*" 1WFN#N1*1M4P$W-CW*&V\' NJ(0\6[@;KXG7)[&,@Y0'!' M'"G>#=S8*1?A7 PX1Y0GWE%68Z=<1'A1$1YQG'8WA&.G7 1UD4 =<:Y5/*A1 M3.<-M@-!=,3ATC5$H^.'F]>3!/,O7ZFE:#9EW7%MAA)BSAC=L$UNQFP>40NY M*-%\?DL/&0%DU&1)OR)*",1VJMB.*(*<53 _>5>49=ACEQ_DA+TY04C.-I?V MN$)88:-F:*)J.#B&Z K)\V;;#Q>5 O* 4!X0DQ;.NP\NL@6RA5"V$))03BD_ ML8L[C)@NRD/RQ[20K'+F36]1M",;"&6#>*GG0L.YA*XL'FK8W*7 9F@A-G4< MG0M?EA-Y>/R.J9",I8.0'/[^=7V8)+DRK9'\^B_-F;#C3G #^$!(*G]Q!@_U MW^$A/%Y.OX )$:%MXM$B+,I#\C]+W162_\XE,R*4)^*=VRY O:(*G-HN$G-L MY TA^?-LDR2H*) 74N$%,1GTO),ER![('FFP1T](/GW/RDKH.".\4X*WD%1Y MYOD3E/;(#JEXS;UX.?)2X+J+8G.J7#3FI>(FMO61#=MS*>DH#3S[6:% MNB!_TTC(<>[D.84H/YJUS+FESMT3N /WIL7&/71 :XQ=1Q[K=&3>@V8Q'+1V M$.';$"XD+[Q'B@ ACA!/&>)"$L-)(OV(;<1VVLZJF!2OF-!]2GB/Y\1*M8Y4 M@*9)F,)%'PRI+%)]"TE.)@Q/HP9'>*>LP?OQLHNH>?,((5=V6[[&X5&1H'&% MNW#G:_Y@'WA$X";5)>0T*P6\D6QM9"7D)JJ88"[26 K%6.C" M(P*+*]J%Y(\39E=0E!<3O$4:2VD8*=YY8O0>L*U$[+P-@]SX]$S694.A1';( M/UR#DA:L)P/4ET_CTXHF<%H (=5TQSHMI,R(&M[N0F-M;X,F/&J^X43ITL^2 M-::I=;I9IWWC$J(86GAI>&,=!%5&HTB,WZ/3OU6%LP:-M#DKJB,4.YI-+=N[ M=3+&0JY"KBHF5TF)N6K?#MO[LU6K76NUF\A:R%J%9*UF8M9*W-][?YZ2>NU: M9]!&ID*FRHNI-FZN';22*RR!;<;W9K3ES;92JY/W9MOX4$KW.$Q!6.U HQ># M=F+FVK,8UEZABS:8@@W46,5C(]18C*DZJ3)5!AJJT^^A?D+&*IJRZD;S5?K\ M 3JGV>C5FH-2*Y[EY!R\'IOJF_<5O&''R?B;+Y]4[<5[%9HD^V5MZ+]\7@R: MCWDE+>9GQ?RDV.K 9AN>LO:0G9\QFE B*ZS,EFR\@9E!#-.!&[)>)C( "W#T M;,DZF B.Y#:]G&Z@UY;&* #4739!@#> M?SW[_6@=68W&W\,XT/^$,Q7_R$^?KM[O]OO-_(;+O*C /*GUF:P\)#SU&2!Z M?=I'IQ[<.CZV CR1+Y-Y/OA^^/6R?O9P.?R]/KP:73Z<$%G_*;_9 >)9/M6@ M:\.84&].S=GK9^*GB__:X'_",LG^5T?D4]@"_';Q$+H ;"57GAM,QZ/.VIRV M<8OPE#()(588DRB@+T;LI^%B>K,$W3@1OD@:@Q<7 MYZ_S[3!?EC1XG,TVPK?1;+9]4[@S"'98>7!3NAMUETB#-G*S4 )EOS16?Z@K MZI_)QO'IH_9*;N#'$YM< M%53U1LV2HD=JUWW,2%N"H#KH*]9PQ+! &5$:": MF0$J]K;=C'$';GHK91DF:,*8Q** 'D73*3'FVH5]SMXIS&:=6>:+IE*5C-\\ MK9/50",LY-)9QWAGO'-J(;QJV[QK!5DOZ S$E<;;OQ'94(D\9;5Z_\L_J(A) M'/1L>@T98.\Q=K>!EBL)KG?+*RX8Z7")L(GND4^LV"FF.("K3165$J=6= MS.'44-FMM5H%:"*)1O(N6H?Y1.3#LZP9'PF@3=7LF6G+.MMH K8Q&*G.6XW, M=+@;^1]Y.OM,6!/2&3.P425ES/QAM6%W54E?@=",Y'?&!:HD M\HV7SB2A2JHH*C<=51@T(JJL[J23A,,2E%&SD74))&Q'D5P/\2-=]3'K@\W[ M&@>-L%'+9*QEPJJ\[JIEPGN:)\L#U)J=0AJ5B,-T<1C1KW,GM2(0AU*MW2LD M#M&YV112>Z*6!1HEB/S+K]1&C9*UA1A677;W6)I'2B^3-V*$'!HJ_'L.'VK[ M^B[MS&O8'733T"* ,J)2ZXZAM#1!V>H70.&@ Q-3UYQ/9..9@J8A3[)FD1=9 M=RF+HC&0:?"-X?"3H9K*\[[HV&1N4(9M)=E5"YVYMF90VP9S M+Y-W:%D,#WPG@@>-:V,X!59P[IXB?O)-D\>:KCEO4K+*=K5&1\I?8!0(Q.FJS(P.[6&HU"[@1$UVMU3Y,'!YOIP*7M33R&RS[QO9BHBV'[1/97]GX! \2 M?)<>W8>&UP5@CWV)4JTUR+UR/VJA;#$:T5YW3RV4#D;;'*/-K$L4H[.SC[.S MV-U$9O(;96^I<_>T]/$^H8WV2D^9=J]H7(^@ M31FT(NIK9 W:M49(C8K&Y2KI2''3!'VE7#:*-,,VBNROH3A)[X)\OY"3A+5F M,3=\($#354?-L*H+^ZLC40AE6^P:6;>Y1,EL-_#I^FVQ M9WD_IZ9;DP:XJ:URT-R(S'1V'XA!)EA G2( $H]5)#K1;M$7:KCHT62N;=+9 M;\!.3K''_4MS)N>N#;BFUOS8U)YGVR7<;U YC&Z$:#K;#81#E.TSZ!8 F^CO M[**!;DVC_J<+"_"D@1I2 WVT7+.+UXM.P&I_?UZX=Y!ZA%XP.9(<WXMG;C*X_X*8UEWA*Q P-HS=HMWON4/GO[ M;K,*5(O\]IS$NXN+#BOC7.LVT;BH:%>!O1-F/$<%*%"(N9"LL2EB/8D*>.R7^L4 M8;\[FK.QMWP!N;T>-:S"[U!]X0J(-95E!7^9U2M[.%%1#V4<88G7ON1'4.]T MB93#5\VN>[2\H2K#^ V=CJFUHV@([DQM?N:-^4#^-VJ4)U0"D6E#?W\FG4>MVBE6!"ARNVHKL8/A(?3S7RT[3^8*$< M19YICJP3>=YY'75>QCHO7G^52$%Q(=NH\%#AY0[C>!U9"@3CF*>9B[#_$O>X M[5;NS50H5?VTA0VT9^KO27NE:K5J%U1XX\Y&42.B%TP DBO R"- Y.Y)<+0R M8ZD1H'9MT"[ B4;,[V4)T+ 2(X(VK0D':'-0D]I8KJ[ RBE\X]J3 M9LB&@AO7#N0!N/BX<2W%>)+,$G,*/ A4F45?3/V%219=,[Q^P;QU-!JZV0:? MVR**R"S[P-]8,/GNR6L$OKO5T&7]:AIX#N,0H2BB:HQ8*+;:1<4B&J\;M(Z? MXD(]4R1_543]F *P=P8-LD2AB)JQ(B%8:^ ,$2G9I-3HQF* M-I-U,ILKFB>BF\9SW:'6%*@[1O62.5^+J-"RPM= SQ&0\P*HF8BMFP5D:T1A MRB@441>E\BA$WV6K[\(=%?@I."[L';RT-957$C -U"T9&8J9B;HC MFQ&?6-1V+$UQJ.KK(@8MF[ -U)6I@E/A\V&;35<1>Q8"*_6!ZC) 8F2.Y-=_ M+5!T95J/$]FB9V#9JN=+S22229E:6\I]GWVR4N?(&J5B#1'[*#)E#:G6RK_8 M7*Y= "KF&H8,V73T]4X4XSX('",A#%M2QJ*&^$ MOBH3V7BFQ )KCV<+O9*QANJ]8$7,7P!-1F7*#!4J<+91F79%[''Q:'_W=.D3 M^@'H?&&HKO,&;C0[)EIR_I7X*,9_ +> M>QND7*KZ359,8U\E7;0:G8CZE%$O8K],&5&_W!ZO4X!,";J[<;O0@JNK^8T3 MR0?5;YWXD=4.0F5:D"Q45\3.F[WDQSVU-%-]WV#3ERK+DLJ37HERK/UV 21' M@8!7'71O5IHB-O04'=[+9F&GUFD7('N+!_1V" F?1RE#(CMD3.&7!@L(@YLZ MXV#">'#9(U_=M+I&:=]?=,319EX*">MFOMS/MW857<0^6C3@@?297@ M(TFJ21(&GJOF&]I9B*U.K3G(6?U'DJG*^A_YBO%5+]2LK@9?=7K=,O/5LCD K\>F^N9]!6]D MN"=_\^63JKUXKT+5\B]K0__E\V+0?,PKBMC7P[X:7AW8;,-3UAZR\S-&$TID M13&G,]EX8YZ[8;(*Y9V=";!RMJ^;\BV(Q^D.?VV)@")$T64;@'C_]>SWHW6,-1I_#^-Q_Q/.MOPC MWW1;O=_M]YOY#9>Y78%Y4NLS67E(N-D58'M]VD>G'O"Z/LH"9)$OD[DM>C_\ M>ED_>[@<_EX?7HTN'TZ(K/^4W^P ^\R6,^C:,";4FU-S]OJ9^*;J7QO\3Y@5 MZW]U1#Z%+WI;?2S8R5]D+N-O M&0\=$4=SV&/]=Q.+R?._PG6?Y%/^&>LZ?\VPHTW)^9RESI=9ZFK.4H]SEIJ; MV-DM(:/87U8IND1&3]#?NE.8B1(O0[.JT>ZL9]G0_LM5SF+ZK ^;H=Y;('$, MA[^]>YJOQV(YF.+23=NUZ @>>Z:;RA]'GJ9MMEN#7@^>1D&)S1AH+9<&K,T% MN<\ZOQZQ71I4UV>RRG3C_+T]DY7@_8HHX=RU YX"7_#+DC+AGF:81ESS.AUS M]ME_:G^3'[BO+ 7\?OA"I\NW/@$-, &JLJ_!4J93%BS?XN"%C#[-(9_)ML8+ MQ2T#)720L;1Z1AR5D52:N_+-WES;:[[$V4&)L^7]?G5/1E29&* IGC5JU[P) M@3UY3#Z 6ZM^9EO&.6'@W@ EJADU,I%?@/4H-=AW8%K M5S/7LEV8%I.)[&Z6JU/;>X1G=I!'JK@6WQS)(Q%!,@KDY72JV3:SK]FYL3]= M,%6HI;\1N+5I>=4SKF"M? )L 'B#([S^O_S^JDDV7 M6$K^8[1D >QJ,)5WG MH]0,STQFPV&W8>844>3T@V09Z9GBYO!0,+ 0_? ^3)L_4 /-;U_GW M=.9X'8S8S;^#5P#ON.SC1!ERD2L?DQ&WRY8H9D],5X>'P$I2F=\ J/P?U_ < M$7;:CM]Q.^F#2=CL>HL">=@JL]^^4=EBP1_XY8:5(A=4X>TS24NJ$>;CU A? M.G_EYI/SEN[/?>P@\-PX61/G B[TSCWVM$MF'".CQ_OAC;$7:\A7\K M)"8BQ,-8UGD=&GM"*4,'A^$F\O_#-2AI-3CI6Q[EV>(F08P3/:Q56<7<&8M. MX#KMA;$DO*=SV&YXL@,V&O7@M66,MO;J73>%+R9V##;8?1WXS+VGQ)XY/RK+ MCGE1R_8D\. SC] '9E?/(O==O9/N>L9N)/!!QKUY!=E4ORL>O4 OEG MSC3#[XL./"T_\_G45A3,HB6Z33[PVH5>3SOXBR%K>#%]FVN9V))AAB"X1V7>RLY@5]R MTP @#-RK>J5)EA1$ &LFI+D*"%5;SD1VR$_*PAC!6K]Y$0V5SAB)P=2PZ#,L M(/7,C[$.OLN20G[2K"FC#Q@"=*-*"C4%?)MEW1IX,DW'4Z9S,X M-I-7.G7H MIAD=D.KQC,(Y+$/IZQDT;'69:.,J7)0U%=#&7N)#9I9.Y3\H8?W;IOP'C)ZR M;;M3KXJ%ASC9.Z7!+5ANF; &SU,V+/X$K]TA6%LN!S4@3?2S?JT=>S=Z" ^44[?: LSDR& M"R%W;YD&O%:"J*!6^<7H!]S)U/HVO =P_\F #G*:B;YE#;&\>)[P7C(R?.AS M1N#1"IDPJ6\QX4K]DWA&I-!=)#T^K<1&G\G1Z0V+)+ L%&CO+Y_8[RJO8[PUNC.VAA+!" /-TNSZ M(:HEXV8YEBV#/\Q4%7RF3-C9,OD9S$/N4C"X6EZ%GL6G=FU%#8%[#?Z*YY.# M%"4_)R9S9@#X(SM]4! M6)1I-J["F']T;?Z4V?#/?[\BWQ^'Y/KV_.[A_NYA.+J\6-P-OEW<[8,,AIXN M_V2S/3>MF8^HCU[$808*]Y5[3C#\OVW:&#-HAF^,Z=6;W1_7/)8W3_Z=>3&' M1Q9R ,4P!/'-[B?K2VKA[&UEJ\O*#IB0'2_#5\VN>[CGL#]S;=:)RH:5X_MJ M^'(]P&I=\L6Z-MA2W7#[=O.VG951;![$2E7X^1:<;MPM.!UF1!^_KXKB013X M1V=K_D$+Q@ @_6E:?[!7H"@U1UZ.-'&W=0?JM:8#RT8OO&=0!P\C\@[S(NCOW#/TP M!!=(/V5[)TR$GR I 2:$$7G(5^_6-+RB'4XB.DN=X_860@?1GD!_6$RS,\4@ M<[(^RR#;X3(8--V5L;>6@.4G&1=(]P(CVNDQBPEXO]],VK MWF7FSZ>9DU@" M_T9U]=JXM!7+_)F(\,WC]WM?5YG4EZASDW &WC%872SOP73PA.HM_R=ER3([R/PZ\NMRQY3@IH'IRY:S\H'M_JZNWU!]82[,#64A8OW MG+^-X>P;&?B'2-UW>Q,"I1LPMDHV2MV( P"MNM3]$57RBO).! MP-ET7:F%W.F>6BR6+#^#CONGR<*A?!'_>5=92*?9Z,Z;H:[#-->_K5OP] MD':FZX#X]I(%W"4.=FI,F3WB=9MX(JNHJY%OCGI<6_O4 T_U*;@R*CPZH-C/E.V=\F__&.-K#KHO!9]F%2,-V;PAOJ&8\ M,GUT!G>F-BCWA.994SI^7[0X6'I/9:Y1E9EIMCO^#\_OPHK-+9]E&HPYV[LS M6#-OG@N5Q1(%^GOZ+1%M2'BV=3\+85D0);,4HM@A&R,A]8FH%L/UNRF&2\XR3!TS8ILIZ7 M(0O&M3ATLOIFY76^QU&2GT=)2)C1W?DWS?@C.,^R>J0EYJ)Q*;."L&7(!6A\ M=TTNEL\56WW/"]VTB78P:/DY>E\# _-.J*SZ>Z^]&WSE>*B1:Z9"#;7F:;"E MO13_C[UW;6Y4N=J&O[^_@G*R[\Q42=X"G6?V[2KY-/&=F;'+XTDJ[Y<4%BV+ M# *%@VWEUS]K=0,""1!"!QK1N[*S;0M!TWVM0Z]>ZUIPS=)B4VV!568F&&IX M-0\<>I/OV.:Z.[N M3IKYC@)\%?2IXS]S_$N%Z7AIH):=L<0(FI2E@BJ%MV&7O7A@2.$50-V=_%YA MF00S 5?!>J/90/2\U/%F.$/_9=G@F.EFC<,\K;BW,5=U+4CF5R.'=#1AB:8? M)H475=__7$]WPDPKFF6(!A;NL\S-6IK897(6IHTMG_&!1E4LSX&[.A\_E6%B M=CL'_S&>$LW#F-0C[-=>3!B*=HQZFCZ+#6GN_+2E#BG"&;!Q#L #R;\781#8^ M("892=PB:&-BLA]3&@[S"R?$MI-Z/!UR3NB4)) ?G-PS>QR]:(QVAP=I3*/M M.U%I7.' I2P_U&XO=Z794EB NV'3J#>"\P#/3&*%^//& 8 D);!^''10Z7&9 M 7A J7&9?O3'X\=EMNUAT=I %U\"&JJ@O&KF2JPHKWL:X@VV#(M:Z*W5[+710_$&:QK MH;EVX8#E0L'E?H$,RG=0A"E]4@ZF""D]G!\HPC[7G)RB4DQRHYYQ)_J\6:3*L[V\I'8MG'AYQ1P\ M16[(O:0VX#G61_AYN?R\B!ZJM"QS_*;XH=W"OG_U^B.35S.59TWIWY"ABT;''XP[5R2^J#Q;5R"W%5,$3: MD7D+D59#F]7;@V,'VGZ]N)\?*Q0;SXHMI8R:7\46\]HHW@J&19-BHD*_"6\M M2[\]V%B\@17;/:]4WV(_J M^]>MCO3C7Y'B_LYT5?-%#S79Y>*;^F_+IB6,]/L!;JX"V 2\. %DCK\C#D9< M-,(W5$2NI/ 9MX_PN<0PR-C%+@ESWZ8+?**;F!4'+" M"RQV>"ST&O]Z+:7;!;]'*11:2R;['51;9[UM@=!LPGW+UFQ?+$M[TPVC%EJM M/F72F3HRI:?,?G5D *Q"27[]AEQV'72^F:ZJTJN9.X?\F[026H\8YSKYM[)*P5TIQA!P*9= MN6(./^T'-)A2;\-_R*[9KPHCDA&JK@&K;4\U&::HM -L38JW846N'ORP2SO5; MO1TWEB47Z;&]:8T'H5RFV LF9Y>+B]FA#"+?'U5N^0I68[>RK\.(B:#4Y_$]4M M@+K2!-HY5[#("3+\$NDQ";_AU++?@O?V&X'Z?SSE'K(1\ +2'9?V<;7&NHIM MYVD_8.S]&FD&#K^#W7AA?\]H0>P @DV-]2#VNPYC,4?&-U"TV/5OQ";Y&]X/ M6JU.,H]]Q^_9JK">K:D2>ZTZNXEKY(:TZA_<'9S+@@>5Z]Y-V!NW@7/X-M7' MTPTSTDV>$;F2,Y*P-0YG1'I3'6D\!8 3VLW8/ZZ3:$/A;(3J[Q1NS1E\,'4D M0AMK9WQ!^C_/)%(;- _.H$2_C"/(7HE^PDK(RY60F[+2;,L56(G.V45[/8,R M[T(LB&KGF.)K,J:O*;5E.LWR.9OGIRF!>S$-1=5#O!6X05Y4HP$W>B6.BZ62 MX.&:O[ M-HX,>]G2N4!S0QN+-T#-P7T, __KN.IL+FF>"_<"*VJ^L(;B*CS% M)A.L4F<-K?$U)NHX[(BMLZ,3^+I+RS-KU'9^Z-Z9XX+2^V!; MM[A&=R834BK%=,;O)[XC2'[@Q$8&< WO-Z+4"J&0]_(*>??LHG>^?H0L ;(, MG*.-^DY.:9B5U_(<<.)N?'C>VU\MQSG8_+7.U[,J@_EK@$ X<] H^BM D#'J MZ0YJ$L-#U>@K2X0Y*D^-]EG"0 +UQT)-P_IRS^8VF<)E<*] %Z$NQ!O, ?^6 MMJU).Z>B4@\M]H2S1'D0FW3UEPO@_/$[ M?K\F8;.1\_ M'1TIH('(.U4KP4Y7TU^E,?)+_._9PY?;I\>S&/S]X,P8UH;8RV8BK=9O81PP M>H?II&E;;\L0XCU8?3EIGGY>#/Z6W-T^W3S^$E2C3=UX00A"0PDHEJ(S,]G:4HP MI/5)4N;OGR4_H/JG%OTG*=;J?W0F_9ZX-'^]3EX:#'+L9V&>[J^^ZN:OLXM@ M.B6&GFTFC=JX&,*BD O0F'3-,L"R[BFTEYY"FWD*:;8^8K 3;/T3W/72L,:_ MSIAWHG3:PWX?]CH$+/H<)];V2#!)?_@J#:9FKFI86?&_9^C_P>^@Y*9MUWF'BWM%1'N]$)>DEUTY9X'\_]'?? M=C\PVWV#MIN%EC>=MQQK(4L[DA-"(X0F26ABWJN0%2$KIA= YX=JU"7%KG!A_P$5SWK^2'9A?V?','3A)([(C9Q@ M7^I'[ L=?LJ]86,@\U>[6@4M5;]TMGL6435?_ ,!H; JH[ 4CA06J]3"4[); MVYKAD9QN>H"J^S!@?TE @Y&KJ6J^8&&77Z$/EV#KGG?75L'OT4W57MRY9.9\ M)^[]I&CAESQLM%M" 0HW+8\"Q&1>H?HJIOK:'*D^ -!2^Q735YU&6Q!G"HE'N!*]FCL)**>6EZNACX2]4QE_8,;E] MH[_P0.P?J(JW2#T(]'CP50JIT'UHY70?[K[?@O]P/A3=Z(7WL*T2N]8-S\7C M=*'&*J+&>ORK,1]41179@#\R,E$=N&VIQ[/U2A)3?/5ENATFL<]MXN"IJT:3 M>77#@-MCM!"^/??LN>7 4"W36-"D]ZR$W9FZ8%FZ&1>9ELO2/)\Q]QU%@#[( MK\R!D7B&ZZSD&+M3U97>+,_0I*F*%PO;R:;G>"99C(3DP_?H$!FVZ6,!D6[/8L)=51[HI.=YXBI/. +$V\V'1 M41(ZCP/.(ST%,T^I4"YS59?IJ+OGE?J'=$' &_75/W1W&G1V3DXH[20FE/KY MI.SL/TPES4HMC>E FE.\A9@OTUBC&9_@D$62/[44Y\RUYI_]I_K9HWO3-+&U M_./YXD.&?+2I;'Q,SFW*'OTAA^QC0O++\5'>$H<8M2 Q Q*W'Z=N*JZLV5PU M%\NB/R)"7V4Z0?F4HVN^WF=JWXT,#RM3Z:466@^D5W -5K,*ZI:\C^FA%C5B ML0$YD1$Y;$@9+PRW4L=CT J5CV&E?3P%UJ[:H[UN4%8I>2/JRS3T6OU_ I& M6O;MEXI)6=(D,VD*6E,L:-4.FQ>JU]APEJO1R+R;DG WA\Q5&RLWP;I24X0O M:86T/@Y]PK*8C3XU^RF^!@ ?TB7V3#>#,4>I!V#>QB3[-AW_-JH!NIJ=A"?> M!5?;+Y1+&C^KS,MZ4-=_4+#T^"1_[5.Q 8.2GCT72Z;T&5:A@K@9TMRRF<>TP'@3Z$)/ K],G2'+,H(JZ)DZAB4AX'XL M:Z?I[4.A!,"2N8MSD>])Q 1E0. M*"*"RFJ&4S56HQV\E 9?-RSZ,O%:;#IH M_P_LNVQA"-4#<(&%30!A#A,!'SZJS+,UVO&?'90O)O,"PN7*^MWG6L1P< M)FIJ@8<808P3%(&Y^HP5,&,))_AOH6+ 6,]ID%[.F/M^*NJ&]0)\'$6S#'U M(/$/P?DX?,^S'3KF9W]?UHAI*[8HCH\'FX#+B?5R..+@IJQ\3B,35EC*!M5@ MGB/3F@YH.IH5$L+N7!H96)[V,O6=\OG< ,OJ#QD1:D:\5 EV>L^LVCHZ,?&1 M3F&9B.^X4@( IJG8P"D+YQ*@:P(97Z.56ZDLO8"^)@K#/, TJ&J- 1S?G!+@ MT(L8!J.#TQU:>HN6 =^1%GBRD0"86,$_EBRRP\ 052,\NQ"5"=5$Z+ @ZID MW1YARV!, &=4 "B; 7UO['"[? %&/,!(?O#M_>]$7P=,OM*2AY^=P$11G.&< M3OS7HB8TH#'PN1@T9H9#$^5$+.C)DQ):=]074 TOM"#5=_%@]W3R MQ;R#U&)>?X/K)$,LP(L6F[CG!;UZAEW+)7K17IE5U;U>:L#8:55 M3U/P#Z5O%F5_XK 642"'5^3\T-\YQLV)U^4)3;MS71ZG8A74NAY9G/93HR?0 M)]!7'OIJH//39^K94,>_2BXZ8%$N:\)3^JZH%]^+8L M?R65@@!>Y8%W;,H/ M 3P!/*'Q!/"$QJN(_\U310^+S)3EA3^P' -!TI(^@#9?&?#]),Z#]I)DW3]H M^Y>_LO?V#W:F2-/?_3_FJ??=D-IY1U.JD+O <0C\3RO$5- YNQ@.&KU>)6IW MA$1P*A$II?"K;0( MA!")XB*1L_ZY,B+1'3;D]GK3E+*!485M7ADUS^5N\YXB*>W?@I3V6NSY>E%SC4PA#:U^4D/(O%L\WJ6A,>CTA#SP M_4S>Y&&PPP:/1CNL+OC7![:C;;2J8(\<+?/J]]Q MWDU"<7$MMGDY3Z1YT6\YS\^W58.#I ;,>3>-$>R *KQ>%IWSI SEABR7S(^5 M<^UJZT,(4:2BF-)+)=>.M2*B.%"Z0A2%*'(OBBD9,[DVRY401:4Q& A1%*+( MORCF[%I175%L-^2R=^M[%47N-O5U/+QU54,R@WJY>NSG-ZJD-L!:LSPD?5G1 MH*7GIN0M]'E+)BUHYR)5BD9Q+(!F&"[;R -L%,C4EE]AN?TZ]S\5()S-4;1] ER M%R\9HL-;ZN:KI8\I6ZVU)(P]E_Z!9,;+#VG'%B1$UI&0UDH:R3I?=4B);^CJ MLVXP F:?8U\+6.P97>WX,S)LTYXP_JW9W[7/ 0,Y$D@SGF7L0(!Q*L:4R^ @ M.5-"7.?X1,L@BCX7=R"JFOX:T,<^?+E]>LSD+ BT4JOUVY+--7*'Z:1I6V_+ MZ-7*9TA;*SU\^?[SVV9FA%16VE7\1F-EZ> :,G+N4'<%S6)6?HG]/ VC@@^C M+S?-R\>;T=^:H]NGF\=/DFJ\J0LGT*D8XS));'X^2U/":'<5I,/U8WU_:M%_ MDL* _D=GTN^)2_/7Z^2E02V]GX5YNK_ZJIN_SBZ"Z8QTU\D[:539QQ 6A5R MQK5K^&._5B4;/FJ"@7]3;0U53Z)Z\*G:%^@)4+G/@*"COU,0-F?PP11)XG4D MR";(&IJI%Y&-+IBZ[%98E+(.<9[5PX,2NE"F^NSF6XR R_)')W=Y0;1;GLRTVE-^PW.Z/V57/8EJ^;MR/EYK+3O1RU MKF]6B+WI '6P&-H(',=QN]T>7+>N>\WAM7+;[ QO;YJ#@=QMMJ]O^ZVKUN75 MY: CR, K3%?84[CE)ZH(2:C2XI.@"/X7NOE?ES9AR5DD>(N$( I!/(H@)K*P M/]OH2Z_0^4I"-H5L"A*_XXEFG$"R8G(G\'<*^%,JB[^M]7ZNFK%*6H>R\M2N M5R*]4E-Z)O"YZ8>D61RGINEK>NG&UA5+ *H%"PXD[MR%308+Q 4L&\-4RJB\Z6A<0'[=J/=+YE]X+B& M6^R&"QONQW@FU7])37:^>ZYS/;H2R_T"'S*57;Z:\Z+*S@?78XBM:P_+8A]H MA*6@1>_V>&.9RKT4'X54U4.J\I6/\R15+9DW+L."4B5B :6[% D!=F)JM0^M M[[/$IW3%F#[X3,7828ANYJJ?.TATLUMC&F/>?E]^'HTZ7N8OQKMP+DAP:BC+L=J M/<%Z2$/2J(>\J:##G=J$L)(.%=S!0Y5^8.:BA(:/%[ST1FRX9CZWK7<049<8"^G/68JDE[-%XZVJVW]7#8]< M+F@5Q176(U"JJ\#3\V<\#\'5=CN;4"GU\BJE[ME%ZWP]YB\!. V< *R1R9Z5 MI,U; @U?I6:E!WN\\W56@&!6&@ Q9TZP]@E0LZF*<3N5N'G+$/[;W).>J;UF M4_(BK3J_AUJ8HD7%;!F.5T^\XE16KA2X MGU8*[)?7JDMU*DIL18FMJ.RK9&5?6%]+'1NG'B4<0OB$\/$@?%O7U JA%$(I MZAD/*I/Q8MH*"9P 7N6!IU02>-QU>BBC?6.Y"3X_S6?=,&CX.(PE%:FB/:K> M..0STW,-]OZXY*2%#1D#O7U6R-*MVW?B%N*G5OI;<%.7@8^3S9S)FQ%S0,.Y M-6[[^RR&+8[;]ME%G[>D\VK8QC*Z('%6"&NOG1DWX*NN?]@#1C1*?%P3>WGL M9Q8RFH-#E,90)136 !+VWUO+#ERJ]!/9K:QLHR7L+%_/Y,VT#@]1HG($=-.. MOL.R&W95U!S7;ZL:@'#)2^%#=9EL40N;FQY\>38 *R79Y V#2M1J695WCZ=+'S--/JEL]TI.Q61F=C65[LV4' MLSUTDU*=Z:UAO?WPYG.#S(CIJL:U[HP-R_%LXJRVD%(Z[6&_/UCI$N4O! M8@@;U_*/9]BHI!I8QW6"(L1E^-&Z/).G!>5.B=;L=#?\UP]5 MWJ&A)HY;T^-<#@Z9MCX\2B(,VS9O*UCV!["E18^.Y,:P;$)3<:Q::23G(WD[ M!I);[=-L B2V( >VGF-K1B17?K!U7_" MQ=]%^PP:LK"CO#^3-_SN5).T7_QVP7KRUA&G&M8SS]XS8O3J(6E5EVZN7[0N MSSS)!>5.?]7,^X?G?K?,)LW$TLU7V'1BHA72!T]T4S4I&[5/8JP31QQ/G'XT M6SSSQ!:4.Q5;\^.)*W6N8_8K9FGBM@)9XL>VATS[GDNY81;$I2?"M0BWG$38 M5TZJI]VZ\)P!X^9]3DR !N8!PW;6PXX?EY[[W7+_26A(N%A1C%R):+ .*< M3VH6MG7!^$$!WJH$P+FSQC7;\*Q:X_LYL56ZZ3&0*(8) QYY>/ +[>)2"RM< MU:"QG*]=7[9>>L0'W4]^.H36G=X_NZIN$NW.O'D?3U7S!3FL0IQ\19CLUC95 M;G05WB@MN := +HL=_9@@(\-=&4PK +,N;/)-=\AK]IDPP>A3D0&0MDZ*I-6 M2N[N2IH:L$?>F7O30Z X'7@%^(E:WMX6S*A'4DDGS[-674"G=++-SY-Z $"W M(X#FT<)F<)]MHB]981 IEPOA*!PI!V8O^6JIIO/=^(R3;H/U^L67ME4TTW96^6K!=< 2G MR2JG2= 6?CF%/GG)KMPEAQYR K,)>:<-HP-! Q44D(4\?+E]>LRL#PX,"TCU MDKLCW.R:)3=!G:4H8 MRXJ"["?^MN]/+?I/TH[0_^@,&S4FK,U?KY/7!BWR?E;FZ?[JJV[^.KL(YC-B MJ_).&K5],8A%,1? ,>F:?3'NC,9CF%67&4-J%L$8W@9)+DL93K:"\K%9=WJ" M=4?P?QR/AH%O?H62V'1XS5H2<,F&RS4H\]DSL:6VS!ED!+-2[43E5 AN!+.2 M %XIP!/,2B+/9_LS17ANL..+M'R A5):(B])#SG]V:US(Y2DCB_YC'( MH%O+OK:\9W?B&>N:;1<;W>>NVB4W:$X^&4B(#Q.?3F$GX/#BPQWY24'QXG$ZN$BB!9Q"1JO6]1AB&#H.W%WV>W YKTU+'FW(QHL"NDI(#V] MHO["GJ2G36,%LES?YHI<9260S3)M>([ M?FEN T!L&)'D3L'?>9E*CHJ9D-A5V;8T;^RRQ%)8SU=]3)QS*7)G%H\??J;W M)V,7'H"WC8089L2=6AIX4"\+&FY0UX/Z.#R-O!+#FL/W/0?3+:>ZXUHV>GAX M$F<0)D_X$%LG<-^&-&9RP+B./"Q&EPC(ES73Q_1O\%*_B(LBY]-T-.B?57CP MJPZS[F=X!K=Q7-7UZ%N/_1ZFSE\D>LR0-&28A6N/X&3B/9RI9;M-E]@SD%PZ M$KB-XXVGT6\TZ*5(T 2R2H+'JS.\-?Z6-#'N5'6SLA_A)1<238#,N,BT7)8C M^4R"N81IACE_5A$0ELD&\H+3'HPJ82S/JH$+RL! S XF\"6QF-_FZL+[ J( MK-$ZDI79^DOB?#(@CVTKA/82S^?29;@D,']OL-HNP9M.I+0QQ<9+PI MT8G&?5AA!M9EI+<*'2@B:5FDUAT^PTFT"MTIQ2FIXHJF.SW; M6/(!5T3+KT0:E)!*(96'E\H?^KOT#>XP=:0;,$%:7"*C!0F2$$HAE"(96&2A MBRST$P:>R$(7Y]^%SK^7[GU3>B;P@>D'2C$4;0F.Y_0!\):UVS]LPLZ)9.K4 M]Y"ZBI@>)&!:+AG379D_3JLJV-;ZI:,_A*=Y'T8:'HS@ =-'&D<+3QSJEY_. M2^;L]BFQ21T MR5S#C&1H)AVX]J3^3.U)Y\LSC.6LZ",*-V9KGG?4+Z0N\*R MBEUKKEVKGUD3S0I17U3==-QXPH"PJ#Q;U/8^^A+E<_7_ 4@A]Y-) KU M2@X3B)+JPSRFC(9/MZIN_UTU/++LZ^0D5X>U^6CLY!=N82\G[GLX]9)Z.)77 MNPG76J*+C7[B;5C_>VG0M)P:?3DU?HDX%J&ZT@2G M\I5.IW*^<-Y"Z !?PWY[VPBJD'<<:Z_3!;[H[I5?IYMR#,0<5SC.B MHFCC1_#DY>//I;_JQ%;M\91R']![8^GNA-9Q/R^DT8^KK-K9@8)%+5@[^X<> MQ=_KO M"%\*7R@L=(?;! W9V0 B36'9%*N.Q*J>G4V%OE5'=:?'-(!^\95B)ZN_%6-W M@!4J>; 41MJ2*L S59JQ1;2&A%X*$@38R ^" D0I%(A/P>'0?"X=RX IIGT, MP-\B$$ A1*3-ECB54'3/I='*[>C=*"CQ/M';4)X3-;@,AO$&0C1%$@_386Z9 MD_5E:SSV; 9DQYM,]+&.@YC8Y#\>,<<+"MI7RP#EPPKE:4$^?6E,"(_R'# F M!5OS\B XY,Q4*!G8"F@T@$# M154IHH(BRPL0;/ M4%](?!V?B>/&"(+>D+G#1\QRS.0*8EZ*X$&2H%BJF*]BG'1@.I\ M 25K!B;?UIU?;"+Q&[Y3M+3H+AE/31TT8T@'E/B%I4= QV!IQ#AU=&:2N%!R M%8;8>VAYO> MI?W$Y:EO[U)9]"X]Y=ZE82AG1&77WX)I]^9C()^7*)[)T9W.L;E_!B5P_RQC M1\=C,#@F<<$1R\9%M?C>JL5CC&7K9>/\58L+F%419M$NIU(R0P&'4&,1Z)-2 MV.4UX\'=:_NPR\V'RCC4HWJG^5JG^:@R%RNOVLJ5R":4VV;E]N#9XZGJ^,%2 MNGV"S8G/B+R,.WT2VJ^: B4>5:'%VE'[Q8MZA/;;H/W"?X=SOXVQC;'_-!4H M?2"J;38MS_V8J P/G<]8%LT.#Y4-V=F&O59ZYNZ_PNC>Y2+\,-;B\E M0[]<61(;J1)=B0>_.\=KD#,*X(#IGY-7Q$HXD-7*K MT>JDD-GQX!TDUB=P5RUTZ#RG.Q.A;/JM"\-" '7\'T]WPG9YUZ,?TC>BT&]'A*]N^X4%ZJ]8M#7P"!I!ZGZ0C(?IV"SS>CS5R2MFBXW! MEU-A$,NLLSFQ*3RQ=L*= K*GEJ'Y+2!3XQG!(\,DUN@[1E^?MGR;XX#^G*44 M.LD$ DPI1'X,G//1\A%4H-%#)^.I/X([F4/)G#_.J@YS9#)%SL.VBQF3N M/YYJN\3>T.X.9_*$IGN3I)W O$W,#Z=@L1UCH]&+2VJ.PZB@F1PY-#PX> M,0^.7OP>?Y2O?DY,EA :+80"T7-A5C768O.=)AX;BPU 2J*+[>'SE$#2;JOL%L!TG:M"(+"\F":8YT4&2K3M=CV8BT^4;S+^/1X'"= M5[HLSE0-ZU\'=QEY06T P)3C,*7G(Q5!RU M,%+)#LH,T+Y9GH-U+7 C!DMX:)VG8]FY4+61[9 M8%E]3%]-\<<[DU&;WD\VB;]<2/YEY;R7J@!J4KLP,AP+U4R2^QKSY4"#C+17 M>$R2>^*WJ/2#0$EJV'%Z1=I\IY=6T9"P("5]" V_]S-M" V*_P4^>?'+EG*OM+9PA%SGBSZ<)L$8R'.%]MR"OA: M?=R3GF_P6&FM4J#TD*8+E\#'.^:3!DAO@M?5U-^;4UW3B/DIG%CE[,(EYA^_ MX[7^G1=$M8.JX<"=PZKF2"OSM+V'KY_]YV_(]3_^^D4""@G:,KS^B=BSLSC^ MXA$%G,Q/X.SB3$59>H-M>!,_P#!R-(J,)&HF+31#6^]O"G^1A62]F21P#>:K ML>AL@2KB:G8[6S,G;1^!V<8X#,[7F5[6=F5Y?90 >A>YZA?9U7MP6L;4C*(P MQMV75$,G6X+CP'U]/X$UF@+4I7(=% MX#JNYLF7N$:*"*/&;I+$@X&1'5AMM(7K/=T;RS^"[O7_ F94]9-2<,L!"T!M MM5]92&>?^J)CU;87U +Z;/+LFJ4 1Y?[&7896)'J:P)G"MB#+8D+&VTLKL>_ M6DZT@#D((\4?$GS??^UE=:QAF2]-293T'$XBH[SE .S'BW9 M2-"OGR$FJ:)X9#PD5Q;L7W], 9V7N'<,'9C$RKDN'[Q(0;U>M*T]DB0MZ3DY M)TOJ)Y$EY1O](8=,8="D.)"B4$D<9Y3++$9E5@?N)&9#V'RQF,LX,E]HPZ-% MY*C67FPU(*&(!6G6 QWJFVIKU)+H\0@&[M("JQ)Z^>R$ GP'#"39KY@0SEP2 MZ0,X!^ 4&,:"$0R@,@X=EN!A^&6P(71T'VMH^G7'\>!A3F0EZ?P[(<^( PZE MC>Q@V=%]M%_PI?P&-_H5/Z*K &TN2I15>1> MOD*J\%#-3YK')?^!*^[GA=[10\X?P1'K5_^0CE[]@QUM?F$'FR-3&\4.-6_\ M,\T\R;[^\1_1DD\'_5MM7X^*J?*M]8S?LN%4U]Z0512D?G)?Z$Z\+[00)"%( M0I R!6F0KZ#K] 5)$8(D!&D'01HF6R2Y=A:I(H+$W5XVSI1:A[TLQ;UDT0+U M.NUE:>X]O=TZ4]#\R'SHIQ"K,27YN,% MW4*B%"6IXGOC/K8F$M4YN^A5PI7@!=Q"H!1%*;*?K8E M=$Y7Z0 =$Y&GPX'ZSPY'&*SOHZ,$%XJ MO$F=OY1#= KQK;GXIF1_ M98JU">2AR6?F.1=Q/HZ14)$$T0T)1]Q-3Y1 M?1'M#_B*.0@!%0*:0T#;.5NI5%] E8;2+?F,5(BH$-$"(IJ2G;<:9ZB^B,J- M3O^D1#06/(BQ=Z_0=]>HM2CCJ44:9=I/):!*=M5WOU>2&V7CWK7-!H(O-70@ MJ9'F7+0MWA:M77KYVE%F"U,N_N,G]?V2SV]=7V@E-TL+7#\C",QC"L9DLH93@S1E\-/49WYT MS[7EA,Z>VV#6T=^+(S:P&]C.*:/?4\O'Z886L^RB8K _?@,%F'3R3HG[ _.M MZ:\!)_S#E]NGQTPJHL!3:;5^6U*T1^XPG31MZVT9RU_Y#+GHI8;J_^JJ;O\XN@OF,M!C*.VE4KF,0BV(N@./:-4?QW3Y'6P_XS3W^ MT),Y@/2+(SN6Y3NTRVXG,=\RZ""#:GF\/E5Y^WQM78P&\S'0P=4(-B#3 M3>P5%O3'P>Z@Z$*\TM8I[_#_FF48JAWT,PM[F8)Q>F;]PZE'[?C= "/W#-J4 M^7U&L>T+-NNN2<<;$ J64GT?+R;>*!0G\OZTHW38RE2'[93D>#.XGG;/.D"Y2^VX0@@PT*9,F=X\59M!_4FT<9P7E;:B^YJDD=:D0DVJ+ MR3_HUA3\C!%V*WPAG(O*S3NQQSIL0A[ %2 X3HG'P7X %XYM*384'@II%M)\ M2&E^)#-5-W'S<@4WQA"KIQK25WW"L>SH)FUIZ@C1$:)S/-$9O;S8Y 7#/'<@ M*+KIP%;S[]A>F6M!6;;,K92P<%>#4#_6A'O/=5Q #MH&U5WO#EV+*@1>"KJV MSJ!:H6/2V6&OK#3;70R51JO?K0(Q#"_(Y8)0>!W?!QU4INBT#R@Z/W]< M/Q#[T (4>/F^DQ_LB>F6N)A8M8?GPT'5I.JH7G:)SSRD\$2$]"SK_"AZRL33 MW-3EF0(#G&\@ZE?$_ 5S ;!WO=@G\+M/*$3(PLF6@0+,N3,?:#K$%]MRG&+> MC:PTY+(KI6J[:=A*='C:)R21H1Q =';9,CA;2=#^MPUR6SZO!DUKV?Z;\!G+ M]QGK^$R! <[W#?4[> CL3CUV#O5AEON0Y4UUT1H'Y M0RQ#,)K[&T*SF#ND=!O]#F^=57(#\*,0Q>U%\:@;EMPOD"F)2>0+<4ELEWT4 MLFE?$\CI ;ZS;/Y?Y:BXEI/DH-I=O =Z",*"HZ"8(Z?-F(7W>6DC#,JY(%=<3L6?* M65P[]6)BVW3(^)/FV5A-=7;1.V_U5FD9>41@C654D,4F6-S^82WN 2UM6$A& MZ\B*-9]I-?IMOKK/[)-!EH< 1&U/8"E;C0A U#D ,:A: "("W5T"$+U>H]TN MN8Q,N$.ENT-\[U^21798S0!$1'#W'X#HM,^[0R'-?$NS"$!P'X!(%]*T (0< M#T!T6QD!B&ZDQE0$(+B441& 6+>X7;F$ ,1^A#@>@) +4?0/&T/.$J%.+0!1 MOPR(OQ,'2?H4_BX!$G0,2W21>&ZX#$@S*,(@;'\A/%OY) M)$H(KZG6<8IN$LU.!>(4*?)\T/"%R)\00LZ[D%NC]H.:>/9X"N+&+5%9_ST%*V72OV>I'?WS27>QN= ?8?]4U M,%Q45J_]YY9!UU3P(*^AR.O'\D%S-IBLR&P#7I26//SLQ)O1J2Y2YM /$M>;8];&$F=[9% M\@,L@XZ-HVCL[FJJDXD$&Z"QAVU,I?O)!%[&WA[E2C+*E:;_>>5**TGX#1$\475;>D7/(5 ^@4!X3M#K\M)0Q[^:/\93R\!%8MT ;L?M]*J,!\/Z;ZD7E(DJL@^>]WZ3?I4X+_KL^;717<430KQZ<"M GK9L< 3VUY,34'('Y M7'.GG%U@E*-\J O]GF>YVF<7C[KSJSFQ"8$=#WASF%%@@\,G\)YK CN@XYF* M;Y\/A8:OR*IUEZ2*;-_'#=J#9M=?;O_OGYWF]=UW6-U9T]9>FNZ4]DG7K!EI MC@T=-@U-$%;+L\?$:5XYSJ/_2W/JSHPF,>@6'-[\96JP4QO.UZ1W=O%GMCL% M8?IS$*HI6YZ$&E#T(^2$['B>_H&> ZJ .Q[YQQ 7IB0/&L& M.^/@.+RI^KUC:61,TK EYC(.)F0@SWSV8+/\YW;_?""C]N_+YW(_31+\T[>: MG[MAO)9%M9=Q&7J.0-3QU$>B'HO0AC%55;+)JPXC\R.T&.FUP:$8AS';MZ K M2 N=&)HT]NQ7_)Y$)A-X!(OY$\F%Y< QLHG!>9K3 M8P<_ M, G<3PS O\+:G1\]GET*;!F=-)W$C!,W1W^G!VQ-@ ZL ULJB8#_JVT^;0[R MX-D9'6(JXRO8RK!!+V0PL5Q8(SWL9QR>9*B&$9YD!&NGT3,0=3ZWK7>ZXB 4 MV8='PZ-U2#E0->J20/@)9RHE5Z27-U>DA[OG]401":!HX.3AXF7.Z#")FUE9 MSJA2PQGM*^L3&G2];DBHZPCJ'$#K4N,RW*LS< 9==FQJXIFES8X";3(F\ 50 M:(NHDI'JY # MU]W2<'V8^5#DO* \ET:NGP3DC&V"ES9BJ%/Q-#@\-YY:!N"4YEN %V"CC0#; MC@X.W!Q@9[VA[Q/S0L Y,'3B(<[GZB(P1R06$*)+A$X WI]>HKX3YUPZHOWR MDTPR87(D@Y*>BN \J+IV:]E/ZOL_EK,%?TA6C\62%@:]!/3X.1YOX!\N5QY= M5DRU"1U7\$1^$3=?<@0W,N_?_$ME)G M65O*@0,O$$!/SQTX&YK/-X OP M# >0P&!)7;MGRW,EF)YP!Q3%U*%UZZ=R4 @R1M['AJ>1($%'TU^#D/_#E]NG MQS 9)YH4/R:X#5Z&A5JMW\*BY^@=II.F;;TMZZ%7/L.T'^GAR_>?WS*?DASC M"8)%JQ"*5E^GSS[V/,0]5IA.#2,+WR#R2^SG:1CR?!A]N6E>/MZ,_M8@IO74] ^C',_+]G MRF:E6&H'N>C+'"^2GS07*]']9_S?4L!!!\%?Z+]S#@=*]8]$%5!\H ='8X%U M/KZ@I(_R&;.VA2 =&I_!H:+D%]E2@#[;Z)7 I[1F0KJF^5G1O]_B<>/?V7%C M!4&]-<-0KFR-2MI&3GHL79,QC5I(;9GNF)1:L KE?F;OV&7+V>7(O21:8J4I M*^M]*9,\<=B%'[CDZ^8_'CCY=R8\VZ/]*N]AEV\_3573CRY_M\Q76J.\"_F/ MW%(:K4[)[#^"*"#RYIL) 'B3I"2VX-TDZ1#<._GE:86S@SH0Z#^@QQ _8]R. M@:=WWEH_9RP;;@=T+>)9<<*UV,*UH(BM2??ZJGH0_4+MYCEU)O9"K-!KM+J\ MM:;G&M%"BI1^H0-DKAV)N"P=R)N0Y?;YFDEX%XU#;S:OH*@U9Z7&GZ#YRB>::2%"F !7*B^7:H8B+T:'" M$UU:0,29F(GP!,?^!(!K0O2ZN!0Y#^[XU9NY7R#;0>F'&\"2.&]R8I'*6:KLQOK!Y8#H.Y,,,^^<)=0\G[,.(F,B^LC=$/ZB= M^T&5[M 4(Z;O]W(3TW/JQ>PE$V38;0SZ;:[\&-%9XB031OK]O0O<:2:,E-]Q M6K1ZV*VZ;^0F4[Q$"[6].<@' @D\D08M[PL*M &5THO^2LP(@PI6;9L$!HF8 MA75S70.Y"$"@ J(8FP!PL>!TIIOZS)NMUF1'2&.";D0!C8&.W"XF^J $"U,9 M?[F$]WL%^,(%)C4P499X%@G".^J.XX6DYY'W.&H%^+8,)IFUS85*Q7?W$8Y2 M(*ZT&IWN>KR7KF36I,A)62\;:18J,BGRL-%1TILC[+-P7CYZWD-YY?)R_WR8 M,*N;*#T4.>DL=&]8XVJ.>HF, BLT'_6HB!]19K1M.3^B="=35=N"24>1,]J( M9A._!#P6/XC]"DN?C(W03:0P=2AG4?3S*\MQOUON/PD\9FR]F#"3!0ACNF<7 M_?,$(0MXH6!*/=,.'Y#D$^MDC#[&?T$\*O42]##8SSLN?.#H70!YM$ M%M$'F?7_A->M-%J4LQHM*N?][IK+2EE:0TE,\FB/(YQ'>@J6R5-'?EE8OZR= MWWWM[V!5PBI =;J+9E M'7VTY/P/V/PL([EI1*6N-?_L/]4O7]^;=HVMWQ_/%Q\R=.> *LN/R>6.V:,_ MY) #'.C$21Q:=(<9VV#&]Y>G;!8C4T0WAHY+"3-]LD[#>@OV98XK?8APF"Z; M2&7 8J+;CLMV7SIL2?-=B6PT,^).+>VC9-FX*P5+ :_S7RJ4E >2[34I-9[C M!E2@D>94;/#^JR +L"-]T,V0YLSYN*EGU:%G_8 =K4+==T5W%&XZGP=2-@H^ M#\'G<;)\'GSS"P3;C2/S!)3+:B'@4A0N41X OB"S==:!T*Q5%Y63('AA*1D5 M)&D1P*L\\)1* J\T39^W*=3IYY<]JF\21I_A(L.I1T)9X>24 ^JA];R7[.24 MU3[Q^0\#POT\K/RW8.&_$_=^\DA@O*_$":/Z[;Q1_?;91:?3:,F"H$= NCBD MD\ZW?(*>V"G9TM=/>K@) M.Q00EQ[TRUL:N[7F2^+!W\YK &573,6U&ZT.7\PIHN)8"$T>H#!@/".3UKS/L=A]4SV&(NHQ]E*/ M,>2S'B/ 14.BR*!9_"$V1(7&:JU FPYB.6ESG#16^T""64NO@N"EXJ%]F(J' M5!V3K%G:HM9!9.2><&(DWQF/HM9!P$74.@C-NG=1X87=N"2!B@I/DG2)4@>! MNY)Q)RH=1,9)H8R3K[C/I0QPL[EMO5)2Q9HDGIQ">OA0SJ#C3-V\7RY"PBU< M?_@(_W,704 2X5;NV, 7VW**YLH-VITJY,H)>>!4'I(J@()^QI64!_DT.?%% MALB^+?FEIU.>0Z>>YIR7)+>M-58&@6$NC16L.WP<_,B!YFIW&EU%5#YR_DS> M9"&I!&D;Z\VM+'0Z_'7!K((9K^&&G*@.050:55!5_$"1B$ RC"I>FFK73;M(UQ0YH LK"?<8/V4_%<[-K&S+AC3=PWU2;"BO.L MPY+JN+:QXB$4;GT@P'57 1)*TF6]1KZP?14S&<# ,*Q5ML\\DRMMVOF6Q0UE.Z-8J8D M=3=H=/J\G1#N#5D\HIW',55- G?-M>-* OL-I:^<@@1RYY#4+,BP0M:T4E@> MKRNOAX=R HG%[5;A/L,'T%6RW&T,VI4@81=XYA3/&:EV)>"YU>CU>/-_JV%= M:[;=7[&NH_'8FWD&:T%+YC; 2J58IV5M,PO6Y+_T#_6PM+7A@_V0J=LR\O&R M=5L$3M<1-,'/!L$?0-V-(J!*587%SC&[C>&0-R68&U(?^0 ZCV& >@E?1BX@ MS\*G-+I#WD[>"@H?=SY*72, /COA=^+BF80( P@RVC5MF9&*6' ;5IB<=M@8 MM 6C\UY&6Z(7(J0L0ZJ9IC0LMIG&2*UHX@?]X+^;/)4CNTT$\ M38F$J6VJN9"FJB-9@?!0AWS"Q$LR40?HS*%T7@3T-:>C5=3)Q[^ M^DJF^M@@C'-C#"NMZJ;_'?JG^+="A_]<8LL$FQ5W"A<"KG175PVP;/8,2::S M@*=0X$DS^/L4WL"&X3HP )MD?CD&N295(JZV?5H._L3 F!<44G M2!V/82OGLHD@ZG@*%F6NPGSY,T3SIBT3^;%AR"K57VC0& $)?$]U' MW\? T M4'/-E2_AY_ M!V;&6+MC P;G.=)8]1RZ.H:!^=IPH[FZH-6!DFM)S_ %=:Z[ ML/K_)=JY]'=$QG-X,_]2C /3UW"GJ@M?,&$N\*L:P=G63;@I_!WG IX.7QC3 M\L. ZIO=RO'@[6&XNCFVV>XL!,.FQ:QU/5?&&7()GTNX131E?*<]07 MTLB]5O TP\.UTME:45\'!^;!?SY\?XG^U'[_!&GG+@^*G!T!DR( M;@"XB'/.)!!6&/Z.0R#O;9-&!=M(\ _(.\5 8##!=0AXTA^^W#X] M9E(;!\XC6.EO&8E<_0Y$L/7[[__+:90#F5?GU5HT>C/QE* MKL,D(/0Q Y=IY9?8S],PT/4P^G+3O'R\&?VM.;I]NGG\! KD35TX@>^+81N3 MQ";HLS0EC&!>0>)W/WSUIQ;])RFRY7]T)OV>N#9_O4Y>&_2F][,R3_=77W7S MU]E%,)\1'S/OI%'/. :Q*.8".*Y=4XKMC@B_C?%A!Q6+N]1 ?W%\!0F6 14D MJ"!8+F(;"ZHA\)N2Q@SQ4K%3@XO:8UUKI#W$>H8!LU-&>-),_456+<'?BHDU6($[[V;3L2&[WPTKE#H(9? MU"3W>^$%.:+G2^TDANOF&UL(5KSO2\5Z< C\G0+^E,KB3R2KE5X_OXRXKT;9 M:YJ8EC<5YJB]JK)37.2DM-N@'/Z2G67\P*.,K]:8AI1H!2X- =Q/?@8A@#RU MMR%::!1AY0[%RG_:C7ZW$F0? OV<=_4ICV.&M\KP:IKIFM6]( M7Y=R'%X/0[U/H@U.^DSF(=J0D])7#V+;H_F#>]%M ][,.H^58T*6CBA+2:R1 M!_$4]BU+"G>=X 0]306=B)4"^B<+TQ#JYD@O7DDN,/XI!#"&$!(2R4I\FK$';E_BD)(7>N M3/WB))E''89EOC21Y*&F3@R7>G&#OBN4N;FJ[[Y;YGCG4._R)@5;M#2Z'=X2 MT.KK2U11%@IE7G(I"ZU&;UB)[EORCSYJ9M!K&JEM%\JKW$WO)09K M=]5Z2G5Z$XDSD%I(5J&420XEJWL2DL6=LU&S^$'>HY":N1TB#IN@.?>2A)E3 M<^8+Q>X>G^CU3BH<*V2Q)K*XEUQ0KF2QU1B4S>=2NQY'Q^Q)4)!ZV'>A*=BN M+,=-I!@>M&[Z[=YPT.Q==95FY^JVUQRTE'[SNG^E#*ZO!Y7.)9;93#J==O]R\N1H"P65)K;/30?E6&O M9/)9I<4G2>$/_5WZ9M%^13> 8DU0SPIY$?*2+B_K!-]"3H21Y>@:H50:R]A@H1Z%WL59T"O$/LTCTI '.OP%0J"4QQF%9ZY@Z- M4TD8J/K$A_]]5%Z_),GA:4.PU:L]S'E72$>![D6&C56@BA>.:)+2AW M6K5F?FGXK\S._$8S"^;]OS0Q )O8L@[8\ /M@%UG2M^\*2,'W$*O9Z-L2 59 MJ5%//5 OR#L>!4LA&IPV;S0X].^\8$G@ MM]V1]V Y]X%?K)EIM%N5H-?ASFC6=??)C.;?\5*L81$VLQHZ1]F#S0P6?4>5 MPQT#,]= $N!M=]I[,)C[ B]OG!G5L);UWF+^F%JV2[DOZF8O:5-<6R,M)(9*3'#1Y'QN>1H*A:?IKP)7T\.7VZ3&S=#58A5;KMR5U4>0.TTG3MMZ6 M?LC*9\C1)#U\^?[SV^8"V50*II4YB7D]9!:=QD^2;DYACG$B9-#39!99+!A9 M^ :17V(_3T,'[V'TY:9Y^7@S^EMS=/MT\_A)4HTW=>$$($)WQ22Q"?HL30DC MF5*0_,EWV_[4HO\D>73^1V?2[XEK\]?KY+5!6.YG99[NK[[JYJ^SBV ^)0:? M;2:-HCL&L2CF C@F7>,3@JFALN*#%&S0$J1@]:.6X(&\AO! "*MRQFN4_I!;?C5$?3PSKS9$FMC63K'A97CTJVD^";Z.35!F\6WW> M@[I ,^P4/*;MM$INT252%ZH,Z&Y2P>EN!7L[ EH>B$IWLA3SFP89-KSY7C9UT4EOPQW#^3-YPG%21N@M_3)UP MS)UAS;.+C=C#>DAMRS-/+EBM_6!#5=CZ*HX[3CXR+9Y[8@G*G9.M]U.'O541PA8]-:5(G>3VC M?7QTJQG8SA$SG8^!Y:0?8L&Y?!;?ZW9B.]"F0\:?-,]&VPH[SO-69[6@BL,M M)R^($2C58^&1/:*TFX'23C50RIW-J]G&(NUX7U@]SO5)BM6+GUINK5%ZF1IE M(%= H_""&8'3++NW(T[[V9:O5P&<%P5M8YP7^UYV93(PH96",U*81MZ%#0KYWW^>GID6-%-O)Q1 M$D+_ST=BYMS:ON6V:%$X_]MS7'VR2#9S2I^.[&E*)/7EQ28O YIXKD +C^M M;>YGAR,^_'H7276PP#^#>E,*2+ DU,02Y>%4X98JWL:@=30?8MP^GWBVI1B2^?D[G[Z2MQ'$)"$1V96M3E=;[Z1 F+;RK,/OR7TE4^P1,N#6O\ MRP_ *YWVL#\]EQA_9LP-Y38/.(V(SL:RN(SJV#)+G.!BII-\HZNF4I K"6Z @R:KD:!$A. M@IVAU\X5+=E0/1JZJT'U:(B(^\FMCMO*?V(VR.F6E IXB/&*V%- M& KIFEXE% TOV!)X;O=Z![6B^\*UTACV*N$MBBTK#S:T*VPHSSJG?R@;BC[Z MTYLE3*> \1%@/#BTZ=P%SDJC/ZP$N:O8=?)@,7O"8O*L:O*ECA>UF%.;D&)* M9E@%#<,+J 20V_VDO/']V\SB@&YTJH%IL<_DP6KVA=7D6=GD2Q1!_2;4<0TK N-U/RA/?N\TL#&>ET>IUJ@!IL=$LW60^38E-U(E+[%H8SIQI M<+PHIIQ)>UOKK^WSD#"-/M$&/UF7Y$'5M1%B:)/:^B^Q+4UUIJL:JUFNMLHY MS;6UTT)JJ-1LG]Z44'RR@_1DI^XU^F7G-.U5C,1VNGS?P')58Z46K19> B^* M;&L-=;!4J&)IED-Q@,OY,WD#\,%SGXH!N=OH# =5P++849=N-1&)GZ0[K C MCEL+>UF?_<&'3.VUWRRJGV9 RDFTF_$D]R0^:C$)YZ",]A MF.P@/X!^"52J^JX1$LYF4[;<.'KEZ3[L:;(=T& M2&N6AP0K*Y@NO40RYTBWWPCM-[VLF+8;E'PNGG=R:[O-%Z*3(#J#P@EM*2Y$ M,>'I-%K#[BG)SU;,;I$&%.7SNNW[,4EO^(>FOU[0R6#7LNOPC_2GXOQE/C9O M5!O;@C@/Q/XQ5>T4=K)A(CN93T[&X!#RDF7QE,5 *;=:OWV.SN?*=*[.)H@G M P=XE1<1B*]XEJXU_^P_P&<=2UZ]#4_;N'9_/,/&(YTO3Y8I1=['.!5/]K / M.=8[."]$B6 MYSJN:J(DG$O7NN'AM].?X\TW/RFXO__ Y0,D^(^DX3/T5Q(?!OF/I\,^ +<# M"=_3/!O_0]3Q% >E6]KYD55>2$LTSR/UDA8KV.YV\^PG5+4XJ MT>6@U3HVT>6P?WRBRZ6A.AZSY0'C&>W5?C1'Y+&,403VRJ((# ;7YY/\CY;! M2(QU0;H!=&KK+(!'7C,!#W[@\4-_YP@U ?W'DM*YF,'9"MG96DGD4EHN?0:3'E/JK-5:U+1U[)4PE. M=CJK)SMAR@H]LUD]ZC_PC92>RGNBF>023M[!8UM;'^!6:$M<($O3FB"&'IG,]_OCI MG.#&I4@%X/&5UF%8=3IR9R_;H#MS;!,L\E>-*XHTIM5&+H#JV:-):T\6_=LE M)G+ZC CVU;-%_J]@MU]RMD8[85I1\C/2Y'?GC9U-;FD"VH#ZOU,5O^$G.>U-V^ MRLL[\N"0QW8^PM9"8KJX: M1HB)V.MJ0WJ:$$9,$6U(8\"_B2G-8!!(\ M(48YHCN28;W!P-RIRKX:/C;V)9L8:G@J&Q['^I0D=-R,D42"B< A1WA+5DYP MX?4SB'A,RZ5,//X[4AJ68-1)D[O&Y_%,QJH'(XC,[)OE&1I\(,'BZ@'SRKET M:]GTJHS1N%BI3\?3I$?/&94.B]\!1 M1?A-8O/G0T>3)K8URYJ9!-A-Z!O#DMM$=>#J-]61,DG4DDZ5MM_ECB+3_H., M 3-(:WGCO\@MO,?5\A7N)ZLD5RM4K:V<*O;N^^W91:>A).A8MI99+[Z?XX 2 M7UQ6&G)W/>VQ@1D6 MI&FXGXS9$D$U; SZZVR@QV>A@@'X"Q?P$6GZ:\ V]/#E]NDQL[XH<*E:K=]" MAN'H'::3IFV]+@W1(QAA0 M"Z[\$OMY&AX-/(R^W#0O'V]&?VN.;I]N'C])JO&F+IS (\2(MTEB$_19FA)& MTZ0@?9(?\/]3B_Z3=!;@?W0F_9ZX-G^]3EX;]#'WLS)/]U=?=?/7V44PGQ$N MQKR31C$>@U@4,C7DH"4+:LBM MJ2$5OJ@A_267PC6O.S?D(-R H>%3S47 Z4=Y'E7I#ZPY#8;4=,BXJ;\WI[JF M$?-3&#;HH.-BOAC@Y.#E%^ A^#3 U-^QZ613*7'8_)\\]R*;UD?R2DP/'N%, M]?G<9UB$;\&FRV9GG+H6;A)_@N,"E_P WP.^@9Z4K2,KHSJ?V]8[>!(N.)U9 M/E)'R;?C^->59:*=M:F3\Z@[ORX7E\0<3W&_.WK7G>8/\&XCH-"4ECS\[-!=*:;WTG,T._"N.+0+R?X@ M3/>V4MM)\2DX\.FXQ%/K7"D@M9U\*0]BEL.-69)_=DBIA15LYA!:Z72K/ /)9F,=IHR>[$MQY%4?R9@18*I.)I<]44"B2?')>9I8_ R^#@5^O=MD@$<), M@IG,C\BD6L\B:OJK9;X8X*AH(\OX5NA-( M416J84@&S$Z33H^DTOFAJ:N&-:8[@$-,A\($'W[)P=AM4*N],S4/LJL;O]W 'VT^O=L[A=5W)P>VS]+P( MDJYYC.SD0AOCE\8-*S"7BS"MQL^SR>J.J(CN MB)7K+B,KG'1@0,JS*I#@MSM\LN"'_UMOIRBM-V^*_LLQ8[[ 8K6QN-J[L;I( M/*F68MPH_:HTY5,XE[-X YZ*B)3 7-4QIPC,".SEW=7-S MO7+X#Y/P1"'TC48]RVM4+_H+[ET38%2;)H553AV(OI>GC,O?!!Z%'A1ZL&S< M"3TH]"!/>!1X$WI0Z,$:XE+H0:$'A1XL'7="#PH]6*6P;33:NK\'G"*I^(9' M#4[RK4[S46*MJO,HL5;5>918J^H\2JQ5=1XEUJHZCQ)K59U'G<1:U;#WZ;'3 MQ^(!![]F\A0;FB8T._ISANRL-Z8ZZ%"R"L+[2CYRO 2R!G\]U^JO?_ZX7JV= M]"LF68,)+,,>N__0W6EPO[N@)Q$6D\/_M"?UO5"_TD&O(7?+:5A:DQ9Q.2P# M3^C.2:2Y!;K76& *8'M)/E"(^V'0.Y=YP?AOY6-.:'*&]20&K 3"Q&IH\GZG MH934>EIH5U5>4X.N&JI\D$WH76&4.5U5^4;^?8JI#- M@2KO]Q*X-;*L MG8;2[O"B4EZW,%53FW!S3"65>)LQS=F"JF#(?-#I"F0N4ARA/:2:[ M#Y27K;_1;7&3<,$+]&J,\J23Z#VAG MESDW6 M!6?'&+6IN5AVH1(G%V4KFZ14@)PQW7 5>3*FG49KR,TY*2^@JS&^DW(!=L8W M%V:4F_V_V!.5"/!ATM%SSC@NIPJ\+4); M\AOI,.G7?&-Q<*G!LW12CP,@&> M4NN<)W;+I0(?-#H=;N*UO("NQOA.J7;>#=]<*'!N4"X4>)D 3REQSA.OY52! M]UO3B)J4U!Q9VJ +[C$D'Z7[MTIL4_P M1&)K%O.2U='F\6:JJY0Z]1P1WR4:[FT*!IZL&%M$L8K%,6I&XKI=8]1SR?;X/5:@S;PF )@\6+G*54V^]% MSC@P6%U>\L"%O3IM.4HIY\]Q?,&UO5*41K?%R0'&Z1@)CH92-3E+(138BYQQ M8*_D=N4B@KP<)]:CL"G\=TC->:2E\NF=*&[$9!LPJ5G>LT'B?7,YXDC-/^1, MM9=",+%R#L*'SR"W6HU6NYPX4<[9+C4'*&.0I7L/Z?#DVXLH*%8IC!;I8E6V MB]"BXL4+[5#^53BUS:TP3:$,I=!EK!QY\&&:AIU&NZ2R 6&9A&7:0JI2Z#G2 MI4I8)F&9A&6*R5 *ZX3,W::I [(S[#?Z)75]$Z9)F*8MQ"J%[")=K(1I$J9) MF*:H#,DI?!HRCYLFN==M= ?EG*,+TR1,TQ9BE4+CD2Y6PC3M9)K8V=_O[K.E M+? W%2Z]D/X_29*"%_KNP:SI8_^/B0=F?UD9_5\^+T=*!QH[%///Q/PCL;BH MSX_YF*0W_$/37R]P"!*[EEV'?Z0_Q;Z0SXF*J_P[@)GYHL,L(_Y](\1G\'@,A /:WS]&979G8U7GUGPJ/I3!AO\!O=O"C%,'YRNFQ:\T_^T\= ML%LE+^Z&(6Q+S[\06;16W^2=',*"X4?R^T_?B>SBX]__/Y\L3QIS3?\ M0X[YBV5I;[IA2*JIL"TQ/Q&3]&Q2V M/EE$GAN>G"M].HBG*9'&4Y@K @LMN?B;:ML+@+RDSBS/="5K(KT$$PS:G%Z3 M 1)'?ZL+TO]Y)I':H%-1XB7ZY3?5D>!_$\LPK#='^J"; M;++4YL,K.QT\ES]OJXNVLU'Z,IT3S#'(_">"NW!*M9U/S22=8!$R:UMN\K]E<91%3E MBJZ4CIA>$PXAIM?VG4$SD'^+^Z#'>&CF,\<6PL7$OB[!\Z,>,'IXQ"XGX2J^ MU8F^S/%2D)+F(LYR .:(_2^08F9X@G]7C>9!%KK %";@(6H<.9"]B,@<)NR3 M\=#:/+-WBB]:&I#SYF@>S]24Q?UR3<8TS5AJR]3-4[(UX8F(77K;^DTRR \E M55=9.>C060A)5IIM.3LR&UC @C7M[49+&21'A$I636"* MI;%GV\0<+R375DW'4!$R]5 UV]2_<*5]=JN$:>>KD,ZGJ'P47?D@>EIBZ(NJ MFU\MQRF6U-!)"6R7IL8*H84[-5<_-RH6*:N'7MOYM)QK95?L@*\M)[AD6VFZ MPBZ9W"O9)=O/47BB3HN= *P< 7!WCG>X^/9@>2X0G 2\JH8'3[,F-/A_9?C9 9A,= =D0S]E6B2OCQ[4>G9"X;RX;M;G@&H-MGQ#&#_2P$H M(.]X]DT"E&CZ:Q!4?_AR^_28&38-!*+5^FT9XX[<83IIVM;;TI*M?(;!?.GA MR_>?WS8'9U-C]:O B=K-C*._/CO4">4F.,U=^27V\S1T$1Y&7VZ:EX\WH[\U M1[=/-X^?)-5X4Q=.(,]H\$P2FZ#/TI2PTP@%3PE\P_^G%OTGR2?P/SJ3?D]< MF[]>)Z\-:HC]K,S3_=57W?QU=A',9^3X.^^D4443@U@4^Q3J6%?G$H=R,=M]\2IU$F>2H$\@^"1L>NI8$=L:PYP M74B_TY.I9QOU)EP$NUX0 U .TO^HL_EGZ1)VP5HE#[ $7*L-U^^6V8QC$SU/ MXA*!1H'&HZ,QR'V-(_*K[K@"C@*.1X?CD^6J1B61)^+(H8]=5ASY'W1G3;2F M"G.NOA!,]82Y_R\]ZY# +=0M3?JP(*KM?#P2MH3J.(;J2(\31&/(_\J( 5PN M&*D<[MA]0KGEIB+84X1[B)&IT?T#(YG[UR/F&=-O!0@<,0 &)'3QH$3Z,'XZ M9.(97_4).8M'QN,5)TV'C#]IGHU(QOCU^7 UD%LIS2D$3PC>4O!@>S1F^Z'1 MBTW(#![L'$W.VAER-ESV>A-B)L2LXF(6[/MPIW<\^>IDR)?2$N)51+Q*?.9! MQ3@81QL'DG&&%XR1S-*/[(\U.=QM LO(F2QW$_C%MAS'+_*K:2Y1GARA]F&S MF=;3CS;D_O32"B%6*%])3M*W M626(1;?136L7+\1"B$4.L1CL22P2MD4ER$.OVU#:0B"$0!07B*3RMERYU/L' M= ?\GGYCP%VY2#5VQ>Z-V'$$M>&TN/- M:Q'"*(0Q+HP*AWO??9K$84,9#H44"BGD6@K;!]AP[]6QE!O=04K?OJJ)$7>; M]/H=LV)OTF?54,TQJ<>^_*",#<=5>JGL MM&&3L=WG;IJT\"F-Z\^ZSN.[%$ M]!JM_DEQ1 @9K8F,=DO>JQ],)#L-I5/R(9D022&2!41R7\E.6^_8#R:+X/L. MVRF]5X4P"F'D6!@S,JK*\C5[#:5[4L(D",G2",FB<1V)O,^)Z< 4$W;Z[5H) MK&.TBVS>HF4XEVMJ$2C8[R?K(*_!#DO;P@[YU=R E] ML228<@-? #O>9+_5/AJ3[_NMNOA69?R9C_S6^E[*-SXY'>BFFO MXM *&AH="5CG#%C(OTA )\ZH?K/)3 5WES5E6E>#A?@5]=462Q(/W94&B19G M;_QV5A:_W:WG>C:)PO*&37 &\5TOD_ANB^9R^3CP9"1&C+D2]"][:=640(.W M ^?=$;+TTD/^A6F:"P;Y'ZE\PE*C'!Z$G/DX&Z-])?ENTT?F(&F]G8P\]^*G MC.N:(5QX),Y$@_5/+-$MLI=I-]JMP\;-CY?J>X3#OR1Y.)Z\ Y@Z)R/B!^D. M=1BI/D2R?H)4?X<'/+T1XY5\0Y^O6&U*I]%IK7NC)R70AS7F1Q;HKA#HHPMT M-R-[?9\"C5;YZX+ M23Z^)&];DF\MK]A>&07YL!FZI0OR29GD@1#DXPOR0?+L4P09KBU4-P:" MW#ULW5CI@GPZ%OEI2FRB3ESDP#\1<=YKV]0#B_MNC5*[&1GH^U0'(\1'<9V MQKW5&')@W8_3(_6TK7_XK^PW%61-"TY%>1R\-VD98]O>T, M0)$#F/SH(ST96R72N5@V5USV3]P]4>3>G6*:N/JL&[JK$^=:=\:&Y7AV2OY' M/S'_8_OTCQ@>:?_++?)MEEDGT2P-,#^1A TMQ12YUORS_]1!EFTHD/(36\8_ MGB\^9#48[="DI(_)[6RRAW_(,5,\2%\M\Z7Y1.R9%(%&XE"CPAN3W;CHGG*F M+ILR Z?,Q2DSEE.&$NGHCANT$F;99YC7MEW^V4$Z^^Y!<6#IEV?;Q'0C.,G( M'AL!@$LV7*[) MF%8.2FV9,\B41O,A-*OHU+.#1+%,Z0KVL!3 JSSPE$H"CSM"IS)8EYD]*)%U M&;9J&MTCPDX,4,9VM;"ZK"KK U%MLVEY[H;>J2=;++_O\/81:."[A8O;+SU' M-XGC7%FS9]VD"+@*D7$5!480$E@LHP0%>^/T9-YH'NO+#%%%L"<51RE-66FV M9=[ /FQT>[S1?%?#,I=!M5BN97ZPB8/F^%4U/((A9H!,DU%QZ:RSN;J@;%RU ML,L'R5TYAG;:OLAK,G<_A:QK=*E#YK4'MN3[4D>]1J?'&SN]DS%M7U5%RJNU12: MI8:BGVROIKIG%]U6R>U%[KHD^X2:YFB,*UE[AFJYT#5.L1TJGT1V4W)]=L!@+$2H@0DEU4+EBW_L4 M(6R9-V@H"E].K:A;.."3#URW<(?!(O*DOF\J6!B*@H7]%"QT^2Q88$"0 FB M0B&M0@')=36"Q0G^(28>%NELXESU/>35I34)1%+'&(A5S046*GBFZFFZRQ) M-+R,_D2W-I2KUW'A/_28*7)7W8&-!%[JS2UVTR6Y+YE,&"$Q?;8-?Y,"6N(% M4>V&I&KX2G!E\&<=1C.F110P*$D#B;?A;208U"JI-ANW9P9?]%^& M\1?C;^Q"^-M"LL9@RLXIZ? 5>U7))F-4!EK2O."#8\3JF18WB8$\DU?] 937 MJGZ["28I5'2/\&AV^.S!NMS/_8/G)5E?4\EICL&A5;KGZ^[L;Y0(._/=^MNR MJY?Q;NWS]>X_OT7 ^4S@5B1IH3EF7H_R>!\(N?TDEO-,[O8R5E MEL&]G'=;9][;&W)W(G8/[!A\/^-26ER":,W&='O93* ^#EP;D_"A;XFS^X& M[UEN">]Y/]YSCU?O60,4$ V3W(3WG%+?:_K#R%"18:T4J"PT[S+3E/H%*##= M?PUW:;,;V(H"?P<1LJTW DXOS=ZG1MRU)%5R"'BH9$-;DD%2<$?&X(ZB_ O% M^\YT0&S1.:=MX7X0].%',ZKR1Z;V2*CSKEW!DW0W3+E@#>/^]54WR?V$?78+ MHHS9%^PVWK.C:[IJ+[YXJ@W3:MFYFLS%1P2WQ-X37B2>E+OU21\DJKT>3(JU M/I'8VTK^ZU)K$[RPQ-Y*"E]9^H"K =]76O+X\S;?9-_1/G^4WG2PJF.07U4W M@X)O?[W917<0/W M-CKLOD!-PRJYBP!;R#:BJX9DX%L PD8:;/]TF'Z5;KY&F,/:D'Y@.;H!2RU] MI=?1!WW]_4JZLPL@PIBIF!?EV7HD3M, M)TW0-LO#NY7/T&A+#U^^__RVN=@JM9Q^51M'CPHS[.. .7IA:#5PCOS5'MT\WCY\DU7A3%TX0\L4,'Y/$)NBS-"6,,$#!0G[_ MK/-/+?I/TC&H_]&9]'OBVOSU.GEM,(B\GY5YNK\"E?SK["*8SXA?F'?2J,J, M02R*N0".:]>4%K7R)7S"S _J3(\J*7=;S1(AXE W&-6D)JQE&M5_(1L+!N_P MX4^+.0D>BPX"DK1\M53SZ/:WL\G\!AX,XT2!(6+7PH@RIPNV='1L\FH9KQAQ MC*\Y^$ILRH,P/@?3\?'_ 84P.@D M$14?T0.-,.EC/X7[(9C!$$NMG%BZ^WX++D(#K"_^FX*IL36#IV#$(1B*2Y_AG%^":$QN@-K;LN45/2.8>_.3@ MX39,(FLE+$U ,5*%Z7OGM/4,9IC%*HO:5#QS M>6'X@$F2GA=2XA[F_.AN=&GNRG8N"6Q3'/^H"O?^X)T$AW1L-G%!+@W+0KE[ MD7Y,+=MEI&QT'_A/G1B:A $<_Q#M0["3O/QQ^<_EQG%N>+"C\G,:X)ZJ"Y>; M+X3MW_RIR])B21U=$[18*:[1([X)O>@;[&W!T9PQ]9_6!/&5O&2# *>R*:C:M8$$41N&V07;;=^^VAZSC"_Z"! MH?'F,X#2VT\[^+"R/P;6?T08U(%F8-CP$ A0).TK]GCLN7TRZLNYW0BV/!94 MZXZ=^$IL!RY#Y^3W1=WZL13GJ&7T )>L8O\2_=@BT^>(,=D:N/<"M.\A+ @4 MP> 6.")\&+@^3.T2<[P5\#E&&\\=*L@VGQT!& P5PS/((F$!:.3&P3M?NE;^89)'5^EU?^C0 K &4DQCVQU+JK] M=R @L7P,6(YF9L9>LPZ-<) 5?EV_"@)D1M9XP"8F"M XWDLJF#P12VC$Z.^ MP^6:4#.'@#:E(\5S0\YL":HKMX]"4X_6 =H]>@2 )R\5ZW(P,8S'),=XS@!, M>.&>2Y=,7C;0G R&NQQE>24,\DS7I28A2-K!HU^M2/W4RW[T>M6]_E XB0=( M0F;TB36J&XU-C>H5Y!FN)H/P<%/0+5-$MZZIS> MYZCH<;CB"JE9&+J M8,9"J5_KN6'C)="PYZA+\+PT[$K%4[P.FK6ILX)$KZR"Z13;P2)10;],O5I[ MST^]JEU\Y?4):M0YT^BIA;:+5T'OUH60+4RA%J]B^ECT9__]\].?%TI87IGT MI/\]HALZYG(FUAB[.@<;>:I:\M2[:>2J65:C=F%R=;QL/1R@6FL@-"U[W&\P MCW&=R=KKDY>R7IZ:Q>D;9.AZC41N4PFLA.0M7MVVA.3]2A4PE-76P-+UZJJ M/9,+]S3!5 W.V.#++W6AM/=B5;,Y(Y_XS,^2^P/^,Z^MDWT/EXT#G%8;Z!U@VTKAFTDM?@ M14+FQH2B99SGBPT:V2Y%$H.:PM%EK])4L@8FD(5-&PMFX2SK'D]UL$NA4K,N M!CJO74/0Q>#41>/('\)>HID)!@0]OY5D\38"*]4^GG+.R?#_Z-,A(BT,[=-2 MD)X_ NXQD03S51T[&N;[<6S/CQO/ 94;WK!&O&%*VM6&\F]B&5ZPQ J O/=J MA=3UB$]8F!KMKX6DVO7/8057=\*[%=]@.<.H,C$,KT=,7?6<2\FJ9<447XRL M.C^:; 35#7]X%/XP);MI0_VK(JJ^/N,J0/'^1E1]6:1H13E',XD5ZM)7=T&U M:=1S2P*5F',I"75*XLI+D%!G8,=&,-UP@\?@!JU'29C8T/JUE$=?I>GTX)7* MH\M'*3TWA9J]\JD4;$K^P^KE6>PBNIR#:!W)W*/!U$HR'9]Q31ML5-@X+63G MI8C=RR/Q&J1!;9!X_4[NI2'QE$BDM<&UO74L#[$I(/BDB5"O1GA_A7G,K07K M:+_V6EB_F-_\?*M=9P[_&O%N6NC2\TOL+U8.WZ#K!EV? EVG1%Z]@H)LK[#( MQXSFX;/:>F=Z8Y<;U=7%Y)9N5&&8TN'[R.CP78DVWA(VS";C.58P7S66_3UXW2P?LDW? M<)JP363R>Z/;?&/%;DQP1W\,0R2(?X*G=NS/W:O.-ZOY 1.)>4.+_A>F^M8^ M!X#^UCF_^G//.NGVCG_T>MV+C[.K7N:[B]/LG]\[EVU\N:?3GU=W_>MSP:=!>&>'SK87 M!#^Q< %U*R*C4E6/!:;M!2.A6OI$>L.J1R%U!N3.@Y<""\%1Z]Y![J",][#) M$KTAK)&P?>JI/,#N2B1F--^WC8;(JKA3NQ_CMXVC5JM&W;RX"1.W6M.O-CHE MKW;N^T-L.D;:V-9_4+6ZI>6.4V3CNSV@J^=,/[GQ:2.+SY]"-?D;8 M6EZV6L1U\%*YG>, A)8@C%3[N9']8/7M!"8)DM *0OH?P![<16@T58:7$MO# M=HZ))[LVJEZ9-7S+[@]=<2O7".NZIO)8P YLSWNP''2C&_LW=\2W1)*$ 1O(?P43& MI>/076,ST(KO^ ## "F+SAP@ 0H#19JXVV:1T?8 :X'X(+I'MX?$)._2YR6N8 M?H:C!NP'3D'L;NZGU<:1/*>=BRLFHW4)S4"H($X*T@3> I(QO !@V#V@]I_% 5]ER:@?J"X M0Q<5 7>@H)L8ED8@82 \(J&HHL#>AGA=QB39=/B^_GR@2.J9%94?M,EBRQAK'=2^?D B@ >,/4>6$+H*=*FZ MS,2*4.?OX^G7K(<@00JCB.##-%:"*J$(1Y$D%Y&EE&LXP)I2JO67=Z[G%;^- MALAJBM_WR[^^*_]:"J7%'T@@+GZ=,I:2'Z^%A[IPR2_ =:E+=]E$8?"O"4M M+V3Y+TK72'\B^@Q?, 8J=Z MQA%1/W2O)94.\QR8Z/9D@' 2DO>8DPUYBI1&D)J9'B$.) #J%,V7)\C,$+^0 M1-X0#:ZI!3RNZPZD'X&RBF\NL6Y]!>V)E#7X-6>207-'.$ J\,M\ULESLF$$ -D**IS;,4'47):*SU:A+F A^E+=U4&]D\ M?]86M[KUOT*!!IEZHKYGNVSD<1+6VE%A BBQDC'+)ZC(3Q&;E @P97E%1C:" M]P:Q;)=>LLX:0Q U5$=5<>"A!,E&-V[%[H;]9 3K@(-G:=Y0T4B6PY&#/I]B MG\9/?!,@T7* ZQ?W?3&.%>0!O<-##Y%CA0RV]AB$DC[)$%%J+/3L.V0$GI>V M,)]XL7@W_P9D K%0V4"%&R+OACG@T&$2V*+@AJT%&4P2PMN\C@DM3+ O@";\ MOKO].YFE6*Q#OZOU()"@$ 4Y$7V*B+!:#2J'WR0#Z9V <[!9U9_$X-.-""\2 M=XC@.7,P 2>?$YPZG^P,FL%VQ4CK,38(0R:V_:_^A3!8Z9J17J8T)HK[H8W\ M[5;0.ZRKT_ILDCU=/"I &() 7(.6/X1_ZX:!C_-I59['AC6$-]*^ :C!-PO_ MKZHL\,/W2- %&) >?X5&D:E8D16/&+]FRT*!;4U_ET3%[P 6TB^#% $* B+ M/^$3GOB/T^_6E>@/_< +;HB4=_U^G<5&5BPHX)5(0I1<1Z[CPK97K_X_G@N6 M_;Z9\4ZORMW))4[W-R7^Z.%@&Z3QU+V>_0D[-EBS'?N+^O)5A$9S5P<\&-YZ MT\.=?GQ>'_[2+ORE3OSJXOC,]7^F!V5& ,P^K%E><:L X7-&%94$^>.6GXTL MH4OZ5H2WKKBKL.Q'7==DR;;/!"F9,8O9AD?G:9UH_0C%6 MBF-Q,,Z/9NY*&$O MB5C.LQ'/0=8@7S$L+'>>K+FHH^03=WT,8?/0IG-K\Y4D($:$#R@2#Z3_>DQ^ M+_Q8@PTDY"Q!8_<="&HHJ)($' ]!C('YX$X'L743!(ZRJZ8_H=$Q5E4E* MKU5I5M(/^Z#\RP#S24B0'(0WM@_'(XU0AF4M'@(+N!EJ'VX_8^BLZC'VT*:F MM0+EJ%%_1^[]]@A&':)YS0TV\177]K'+VO'P+(>QX" M-0G*OS4.]NL'O$WU@\34R 896LX K# FM:0&N ( T3I01D0D+AH1Y&O[Y+L M@F07'P,]NB==%5YJMNI';T'U#X.((@0&;DPA'S@3BBXV8RZ_K0- ;NAQ/B,= M ++L@<":FT?U_;=\ LW]^N[;&7OV8&*1[E@Z.9T)/D9I($$2:#MXO\J7@X8; M(%L1#^(//%OI4*E%U<73'"?HU8G(-*2G@&?0],=*3ZS^3+=UT,"-X,_[!_7# MMS6:#0G8K:BN092:U; U#*#F(HU]J+#L\@"8B088EEU,BL=CN%&1-&;0FA^# M;U,'GZ0ZWZ28PKXC"H7;)RK94Z^0=<8,*\'8>X\<=*W=^L';$K)M3-K, BO[>X+>%MRR]2X20JO_YT$LK"8Z95(W)U*=$Q<= MW10WHLT"TH'KX=CK&MB<(TC7MER,(]NQK&(4$3#2[>4I(1&23Z]T%8D)1 MT!Z,*I*)F\P)E% +7+X'"G4HEYC5&%0@PJU0/I%[X:@^ MYO2X7$[&$[)"D?PU N[^VWF8U"2PW9T*MK\,M>EB=^O-V5"[!VBX@=J*0"WJ M0G"89!G]*GPX10:6MH.6/;(:H4VO@S'-4;55)G4,-WP,;'NTL^<@Y#FDEI7> MU_^V1^./[=2J,E' 1/9#\F6S1%.:3T>K*:M3L]Z81P@MFE[TXBAPWX]LMLI> MPZ8';JQ,O \A$ @KMN_UCJ#(99)*C]E)5A-=W-1%,D;X3G +G*='HY]"Q%)0V5PZE:<*/XY#& >1,[U@_ MI /!VI1[89K$EP+SPV7!O&5BR*L \TW8P*2P@<8F;& 3-O!+@IQI:#E&H;7" MTIKA*$5N@1[2/"/[#;09S7V0+_S6,*S7&)-)BDT^VM/,/E$)()BV8?1@/TAF$E_PR*F$$S9R3269D\\)HCI3FX]">N$%[%T:' M4'@#!A=P_HSZ3B;L FWG^-B!Z^FL IM2HBDT%54F7\5MZA1XZ1+3]K2JRD" M*\><#P]0,+#=,$TKXN#)&W2WH[71=:1#K,*HU$5,\'T9JJ%3=TP\@(,Y:?>T M_9DEDD8MXUUWHS0*F6);?@KS-%6)TII98$#/@R]A@ BGUE!Z/F6CRJ2@U-9K M9O(CDD68VA6Q.6+2W>FY-7J:FS'W2;$P8Q9^=S-._4S$#0SH CG9U\3$X1PC MDN($VJLQ+#B,.6 )!3Y^/0MJ)+VY*BE=+6WV)D*8X<:'*W=@K1*+,YO@%%DU MQ3@)@5!1KEP?V#H920*@5A05;'MTDM%0"$H1BT%R+-#1H_K[#!V]@QE4]#Q% MG&.HM!J: O(Y*X!W2FL(@VNYT>T[DC[8FI\'#AD5SQ!$V1".0(D\CU3(&2-^@B')"U6TY*F:;464",K9A$CFI'4\$L3![ MUATW >9 J])>-HG="U+LG$J69<9RDV4\N5635R%#XGS-W NQ.$4)HY4JO%G6 M7M.8(X.WN%S!HGN2?K()+C$CT: 0*,F\O<(,5\%M%FPBG+20Z6E4%_WFAH&F&[RP2-#$%!$S(*HD"9 %H P%/3P O*.[C'9._K5= ^WC# M4FDM@_9=K!*11%S$!?7__??I-Y-!K50JH!&**KN93S %\?8/THE-7 K,+6!X M47/WJ+C$:6)+UF<\896F!$6H8,Z[H]8-WU\'QB1VQO[ ;C$I\:-(#?2-B>-2H3*ZL\>&9/E.>;8Q07A+%9,#J=4)*>,9DUR- MS%A9E2N#\&K.&A8=PN12> X3J0*;4AUI0A4F%%)&N[/M*NW1- ME1UUD)!J"J3NHI+H^GUT?A$2M>K-MQ3[QF=U+1#FU5_&('EZ,*!237U="F11 M^E+DE)3G336)4)#'J0G"M?XEU4O))^TH0V%8_7:QC!W_CM0IYV[36K?-*=9I MY: (E518*]9%2:OGR1H_MX+1B2J6_#O!'TUWG1H]DI:EQD'SFSJ4[F4/GG4J MJX\L 7E-##\E(&C6&X\">7-INZ\4[C+F/!EVBBM.2SW"R@V;$$8#H7VJ+)]4A(>-+W==?+G-C2]WX\O]I:2LLTPAW&-96O12%<*M<':629AE*!YZ M/Q.L68M4TPCUE/$\-:-0,/F2C$H_JJ Q4%2="TN*@D_#IDJ-YBC7MO_3ZE,S M'?0$(/E_AO(:JW2%XLY/O>"NRJK N=+]9+4H+O"5ICLN9 TKLZ_N&EE!RM2? M*L^V]"F@'&(DGZ;@5_0M-!OIB#60A<; _-VTYBTHKF'L_B>MGIDS.)@O3Q0T M2F9-0_YJ6$M(.RB*BOM$)T5QU(Q;Q-;QI3D2&XV?QHZ<9$ M)^<#%;DJ3K=7/S)!A54Q)!Q6$[($KW*BJHJL9#1*8A&�/%$/&2*>Q]:E@RN$K6*N9*&UJ MALG>/Q8$I^"=&(T1I3ZV?1,>RF$!<$.XMQ/ X=#(YLO:B&5&'E\HY:O'=P . M'*ZCM*A2AWZ9NI-S?!#&!%BA(?=RL["/%!J+JS^J[^57GSY.($W$*QG# MK3]H^\18%]M3P2::$V7+_?J[B?6=6+YA':!,MMI-"QMK!IH8Q'V74K]D%P"V ('D.!C6-<[ MLA#)R@53DR&7,7C=7"62E3^I/&Q&HRIG=+L9_(,?^UC8/$W74.NFG(S,CLH( MJXY,J"H6H<\WB;&FK*/X0EN7C\-2:JN_*T"C"FD56 M/:(W&,7 Q7$%NH5;*>#U6-IKRPY:>*:7@N*J'(L[[%KMFU"P\_ =CJ\3 1=X M,TT6Y+X!:=>:TFH,9IW/W*3JEP?K*\B8MF\6U=VB17Q!>P:,W*;^B7;-.J^W MZS5ET-;MC^1IN2AXD(2(F%LS\D!YU-V/9/UN(X&J63W$TD*'B]Z M&<2[(N9\P+93!%-81\S1"VPM]BJ;'XO1ZK&4+><82$VNK-B1BBJI$]*K6.ZC MW6PHZ4([ 8:24$E@D^)P,>D#'BZ_I5%:1U@J?@!1Y7+";PWL^8O_HC(Q$K(G MB6]]LT/8EBI:S?-HAIBV EQD&U1?G@0NZN(FD[W[03@.R*\W3N!3E.WDA697 M)61-3@C(Y.1GT1WDL9$;PO'YE< W0*0UR2\(==45B2BB$[N-72B:K MC,>+X2J0/+: ZA :1R P4]T@>81?O"! V+^Q>NCES]29C3V$DRME24B*! ]Y+@@3H:M-_>/)^:[C\B!&[3E;%/?6[+@N">EM%/JUHX GN[ M4:>',679R7R0-"NE;OU8"G(+R31&FHS-95:3$2?O;G/B&;4;HM3?--!?=2 R M$1*/X)[>IEA[PFGT)J-B H-WOG2O3MHE8RQ!*V7;HT@9C=)^2%3*"O&/#.U& M*RC=2"%^&&?:6"FU1$4#*+J2)A*EM,7LS"3[:QB_Z39]&P?YNCC(6QL'^<9! MOCR+:\=YVXY)/(=V(9UH_WTV]=$Q-RW*2,@F( M5&XG7XA"TC';BX*R#9F)%U@S$'< G-JCGD&1:;Y*MU>SG-"^X]9^R!92DJ\E M)B2T=T'X4X1&^6G38UBTUM>M\MLP^&;.A]M-,A'_ZQL@OD@, MQVAC]V_TW]A#6/_-9!, ^ I?U30YRSD;!?9*WT@R?8B?IS.P__YW$L0?<_OG M+R4Q=$D81/)X_U%QZ?@Z;>RL9&!@FW Q_E_?-&<+"DM-7"(?,:!L\P'"8^-[BW(@K6L/^#F>Z%, MLMQ*/E"+_\G0/P[.4O\"C#_Z;XX)"9.[7DI6:$FC>?+R>9F*;=G9+UWOX*;,_ UD>9 MHX@_;S[_-F/"@[=968_HZ6,O N0$$+17O?4GPHO]?4*))\&+5>+"E;+*5@/V M)Y))O#2@UOC/UKQ+60%6S+W@UMZ3(\]\2UDACCTE[UDICI$5+ALA4 ET6Q\\ M>O-Y__V&NZP7Y.M_CVC68Y4]QB6>*X$ U>4W[YZ>WRR_N*T-JYG :K(&(>H= M+;TK_2JBWTP0:@$(.4&"UJ8<#*V!2C3_8O>?7G6:)YK*^+B'DKM?YN("4+*5-LOAO(V4#.-!J#UIMUA9+UUWX4[]]KK=K) M,[)=3D892"==)36>^3291T74HEKTYG-S+:QOFSM]S#O=WMQGI>YS/7!T8R$W MV11PIKW*"K1N-*L>H#BK*J):UYJ\>-6:OM+E6 48+G=\3A8RM< W5AJQG MR#-8BUM=AS54&K+VGB'&N)*97]653A\W /$Y5E8JZ*X^_>27 A!7N;IU(JX5 M@;852"\G,]NK*=6PI*0-O=N*@2F_&O-F: MT:K2?TFUZ(_Y>C1\V7W;]X/8J)?#_=2SFZ/&76J=JEV"ZE(I6[%-.$5,&@#* MP)4D-71SFW=5%IHJS\G1TFLV2M#)I@QA>YI'V!%?B%+IX^!D,(2 M 65^8J<":F%P397C?($/4OI9-/A''# M5:T?=,4-DH($P,&-L#95L;@6]Z:#\]+G@L?O.&DE86SLYP\)$ TJ-!A@M2@? M*T:IVL.C3-U\'#C.X@45+54%M$R(-NMDJ5;WMD^M(V+1'_J@M][07]BW)0RP MC6#$J(K0326EJ!"4S?U?<#&Z=TMF =?"([X=T*22&K"_!96*-J:_+X3'@SZ 45TF+B MJTY?LU/DM/ .4K=:[GP!$%7/Y;0&(B[^AG G;[X,L%.8*D"C01/^/!7F]]C.A[;!4B5.. MHX^RJV[=NO!9*FX<4.G[_:PH@$B;2!HBN>.7P ZI9\@)]:H-0I@O@5V$<'Z. M%#SUQ<-CLD [R.QI>/BS8K+$GT*Q93-103F&J@U7J2) MX&4"=*&Q>[V_W6!)IX9$SY?2I-:@(NK[R=5^[ M3]?<.&KMR6KU$T@.$SE@8*Q@$'FS0Q!_0C4\-D6@ J&ZY#ZUU<3:S50LG(Y ME0MG0,#Z_'!\6+33N((\>62!#-[F%<;<>D]V.4P,.#7?9,*-5< 5=3:+EE.O M0]H(-I\1V+10M]&1EXGU0MU4'65V@?(HUH:??E2RF'Z41%0.''!T%#CNP,5/ ML&>L6"ZE8\>2C!DV)6J%(J;A33D0AUX%"E+Q5MN M TDIIC#2*4*TYAM0 BV[];JDPZ-0AEZZSNO:-[XE3T,A .@?&XLJ$NM7\W+/$7 M1H^<5PZ2J!"XCIC5C1E!ESH0EOLSI)%7GS@U,]H ZQS7I"OZ';3@=;,:SS9] MPR43;,MU@,\UNJTW( 3'Q'3ICV$H!G]]\R=X:L?^W+WJ?+-:'Q"B>2N+_A>F M^L>/]OE5]ZI]U?V?CM4^/['@BS/U]TFW=WQVT?MQV>E9[2\7/ZZL;^W+WSM7 MUF6W]_MKQR0)Y%(Q"MWH9T0]+$)QB_UJL2&>B1#=6(RL]VU$L@UN/ IN[)FX ML5>&&WN_AAO'%^=7EQ=G/<*+[Y<7QYT31(4*PWU;*W9HTY ?97M@ZIREC!4N MFJ\)=#.M-3NIS> $\$7W,:N5RT&P:OM&MH-)U?(H&:-'/=(]I='.P]W$0VF] MGV;R.AZZ8F!U[D4_H;:;%^CYD6TV^;=3;0*7O]64)YB\ZCG+!YT&^59A-.*- MRK0C(CA(MH.,C8[#I:M2)R1I0D(6'."M@1>EC7L=](*H0[/>(4\5 [+- ') M6*?8D-6RMQO[[\06VD\:^P[_L56WOJ26'+(RIAN2%['X$>%JR3S*ALN:[/.) MH^4N?<)=S]XX]P+21\T^47J!3:4^^>II'NGU40[ E-!*2YJV8JH^U0BJVB%I M#5R/38M15#,EG1:J,(/T;)"' ';7,U&8J!DPB& M5SDQ&K!4]((5C46?[%UJ68;I$0?04Y,H&R'\I\<7)IY\#$]!-CIZY[I;3"GL M?C\9)1YW8)6R6>*#CF$X7J:B7VHC71) ""+(JC0.T;!++FXLTTB'@-P0=A^1 M\!B*&SN4_>KD/:;044G.AJ0U0U?(QH:.TY3P+$, 60"9>(N/0AH#LAA+L4=) M/=2=RN=678C+%C('P[?(R, + 9P+^E0[UU&Q1#B$9TBYUWMV&<./Y1E/P;OR;YGW6^ML]8Y.^<=,^_5EGF-YU1;D0DSE9] MY0.+HWRDZHOMS:7+34>HI#\"5_=4OVT,G*Q;IZ'L5T\B"#GS"DW'A3D;+AUT M9^" +AJ5^I[MCK2Q:>QA\"1Z/]V(@R1G6;&H13$],W9][Q1#H*EB&-/1B6QO"Q7:]_;/%WJY<;=-MH^O+BY?"T,(@ZG>=>)P_V# ME2U0E;(C;O]##Z?T,1[JFQW"S= MK]T>\,7.B=5KGW5ZUL6IU?G'C^[5'U:O<_SCLGO5[; -_T>O@S]*N;ZR-$S? M4?-][HY:![2H>T_>/LJF?]^'YQ#M!XWKVX M-(!R X!5W?A\ +AG N $#^:O >"W[GD'J.)I!XBAX[)MXLE^&)Y] F#36_0$D0I J7:I-\.'3CAA]7AZ-YC/'K@B(5IIV MU)59I%>A34ZE=ABB.)X&V7T//,RJC,P\I,H=Q$F:_SX%S"),]'8(U+16 #K: ME#XBGCB4 <"(SWOQCKMC(A+&?;-DXMSH:5-[,.6'%VT\QKYWB2SZ:@]3?*2/M M[1[26._Z6WB,H;A)N"* U=O^?4NSE)T,UZ@N/S_8*_")O2*?.##YQ$$9GS@P M_$+6[/_!Z)W_^UOW2_?J.42FA1M,+GXC;+LED[%ID+>3./B8LZ8._WF9\W5!USJ!%;(RFV)"L,X'G_8V;F[NZL# MOZK?!+<[[; _!&H<[0CGQ@YW'#NV=XX:>XW]@YW=W=U&XWWC<*_5;.WNM@X/ MW^^(^^$_6XWZ,!YI:-N&D;9A 1@F_D'P56&YNWH#L6Y:&>'9UU7M(VH;A7PN M52&?8SR4 45N(>'O^@">XR"-+OQQ^MVZRM3K@$?J-4HTE?5XWLLN?IE# MX\@*+#!W-@XLA55P49,3563'ZYQ%]1 -JF20UJ%)OAEHO%"<$O?_W-]O[37GPXK&"T6+A7:)LA3S,@I1W7MG M;^U0?"I^XA]2,#>C9LOCT^I_J2"X-.<$E^:+!I>Y=OEKX%((6:PDN+3F I?F M"Z[ M![HRA!U>V[Z(MB_N/?&@BD(T=W>;];]4 ,0:NXUZ][SW4F"EZZ-@;OW?E\LS MD'BPJ F(,2=!/T'M&E'^I=]%[_AO+_$NKNQ[+'#X &P[%EP^J]JG4!9VUO[SH"SJSKX57S:OY?MEYT5?S/101UKVL M+O*<=$Y?] VEK.<$+>SN*F^JL;NW]+$=4U+-=_M&@$@3"Y1S4>T]L6.;S2;O M..61O!219>X]7_PL5FTIV/@S11)";$=/X='M\7[+'][S')3=YFH2^&PWGW]S+RI.8E<.0F:3\ M9F8E-#0/JI*UP/LQL@Y*DPNFQ^^4(T3^[)9IR&B5W!][/N?W9DDG:0_&L*G8 MLG:5FE]E'*:][M?S]A6'BTG_5S6CQF#:[X8]B"L&&&6EYZL46I,OWK@1EC3E M]%PGH>+X241U$]*J&5RW .M'8#@"EW:_%D/;&Z@2!G1[\@%,M!.)#R_1>&E5 MT$J&F,.TY.3J'/_M_.+LXFNWTZM9W?/C56^6W>]+^-RG<<&9F4>2+AT4:'_3 M^$;2_B8+WV4^^<=>5UGSNDG=\.06]MXOT/%GCOD7%SEF'G8Y[37)K0+/7(=< M+'3RP6HG-_"S=<3NSD54J/Q1/>I)*3@N7'[%@#H!0-=HA<=#V\7^ M2K5)KOT:6=>HI J7-%(U\-=N*^^^ZV9=A5UL;2C#JZ<,A:6L 0QL!+*-0%:! MN]4"&78+Z"R&5^*LW;O:3ETC$RM#CIQU"JO_Z MM#.,1][G__I_4$L! A0#% @ %$@)5V"/KHG4!P >#$ T M ( ! &5X7S4U,S0R,2YH=&U02P$"% ,4 " 42 E7K,'WAZ$' M !X+0 #0 @ '_!P 97A?-34S-#(R+FAT;5!+ 0(4 Q0 M ( !1("5?GA,1A]@0 (L9 - " %\U-3,T M,C,N:'1M4$L! A0#% @ %$@)5W_T])M]%0 QA(! !$ M ( ![!0 '5F<'0M,C R,S V,S N>'-D4$L! A0#% @ %$@)5YW'9$14 M$@ 7BD15 #L6!P 5 " 1\] M !U9G!T+3(P,C,P-C,P7V1E9BYX;6Q02P$"% ,4 " 42 E7DQ7$+,5S M "IC 8 %0 @ &7C0 =69P="TR,#(S,#8S,%]L86(N>&UL M4$L! A0#% @ %$@)5Z#&Y20>50 ?+<' !4 ( !CP$! M '5F<'0M,C R,S V,S!?<')E+GAM;%!+ 0(4 Q0 ( !1("5>21*9Q"0T! M "<'$@ 4 " >!6 0!U9G!T,C R,S V,S!?,3!Q+FAT;5!+ 4!08 "0 ) #X" ;9 ( ! end

1FS:XJ_>QWY&.L)Q\38&8ND(603QSNWKWLRPHHN8^)"N? QG&8.6!> M<=FP1U[!*X?60*8UPI:CX4\*VC7$>::Z,"R<6RGP :IY 82O9<_V1T8V[I*^>F[CXG9 M)CJP;KJ>? R<-P+>?O&@3%FDIC")'W)8C TB#&IQ!12Z4D7V8<''Q.32DPA ME;Z<,8PFYIB8PC%].6.(B8DFIA!-7\X88F*RB2EDTYA&(+=*@^)CIY1F&? M_:EDR^EC8O9)*.S3ETZ&M1*S3T(RI.E))T-,S#X)R0CG;.?,Q M,?^D%/[IPQSZ+SW%+)126*@/,^B04LQ"*86%>K-VOZ6GZ"(.A85ZL_8 $[-0 M2F&A7LS4Q\0LE%)8J'=P$403LU!ZU#%0$$W,0NE1QT!!-#$+I106ZL7THYEA M%LHH+-2+F?F8F(4R"@OU8N8^)F:A[)AK.E\G/B9FH>P(:SK.277-FQ??Z1EF MH>R8RSM!2\_0S03$RSNMC^1J;8=Z.?S7^&LI&6:AC&0L%&"Z+U _C64??$S, M0AG)DD^ >;E:-6(%/.QJZV-B%LI(EGWVSWK,A/4Q,0ME),L^>S&'[#^_;N:8 MA7*299^>R9E9@(E9*">9B]N/.62W/B9FH9QD1JYO#BG8WH19*">9D>O#]#.D M'+-0?M09.3]#RC$+Y206ZL/T,Z0%7<-:S^Z+6AIUFX,66ZKZB.<^Z)N-"]W MV\EW6^$O?@%02P,$% @ %$@)5[ % +TV @ '"H !H !X;"]?A)Q1JA 7'XQ^(2 QY=\:,=]=RJ[?5\6G\?#J:RJ MW3CVO^JZK'?YV):[KL^G\Y%--QS;\;PSER\ M?O7Y?R9VF\U^G7]WZS_'?!K_,;C^Z(;WLLMYK!:O[;#-XZJJ/P_7W:6^;-+= M>7*U>'Y;5I@_*"U1QB5!T@1K JT3@WD*@MZ#> M0J"WH-Y"H+>@WD*@MZ#>0J"WH-Y"H+>BWDJ@MZ+>2J"WHMY*H+=.7I80Z*VH MMQ+HK:BW$NBMJ+<2Z*VHMQ+HK:BW$NBMJ+<2Z&VHMQ'H;:BW$>AMJ+<1Z&VH MMQ'H;9.7W01Z&^IM!'H;ZFT$>AOJ;01Z&^IM!'H;ZFT$>COJ[01Z.^KM!'H[ MZNT$>COJ[01Z.^KM!'K[Y&,E@=Z.>CN!WHYZ.X'>CGH[@=Z.>CN!WH%Z!X'> M@7H'@=Z!>@>!WH%Z!X'>@7H'@=Z!>@>!WC'YV81 [T"]@T#O0+V#0.] O8- M[P;U;@CT;E#OYB?U+N/7(9=KS_<:K_^35(_G<_/U\I?E]\[)3;C@7-]6E*>_ M4$L#!!0 ( !1("5?ART;(_0$ #TI 3 6T-O;G1E;G1?5'EP97-= M+GAM;,W:34[#,! %X*M4V:+&]6\!43; %EAP 9-,VZA);-D&RNUQ4D "004J M$F_3J+4];^*1OE7/[IX]Q>KSRM*%SJ;\-:R8 MM]7&KHB)V6NZ)'^Y-3OF': M??*#\\1#*>G/A>BD)K]K_B>F$L?_'XT3+NF^H?9 M^7J?7-B,\XAL?!Q^QQ]G_%[_EWT(D#XD2!\*I \-TH?_*>N] M;_BV?C?^:/'\!4$L! A0#% @ %$@)5P=!36*! L0 M ! ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 M" 42 E7(4,#M>X K @ $0 @ &O 9&]C4')O<',O M8V]R92YX;6Q02P$"% ,4 " 42 E7F5R<(Q & "<)P $P M @ ', 0 >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( !1("5<^ MGQZ6P04 ,\> 8 " @0T( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ M%$@)5[C2&B[7 @ 8 D !@ ("!&PO=V]R M:W-H965T&UL4$L! A0#% @ %$@)5X7>7B$%" TB0 M !@ ("!9"L 'AL+W=ORJ,(SU , .H( 8 " @9\S !X M;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ %$@)5Z,HWAH=!0 2 P !@ ("! M*ST 'AL+W=O. M0#AU^@( ' & 9 " @7Y" !X;"]W;W)K&UL4$L! A0#% @ %$@)5Z@+1<-%! I@D !D M ("!KT4 'AL+W=O&PO=V]R:W-H M965TGO)@< ,L0 9 M " @4%0 !X;"]W;W)K&UL4$L! M A0#% @ %$@)5T$S0#2M @ K04 !D ("!GE< 'AL M+W=O&PO=V]R:W-H965TBJ@4 )L- 9 " M@?E= !X;"]W;W)K&UL4$L! A0#% @ %$@) M5U['E"NE P $ D !D ("!VF, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %$@)5\D]K@O% @ Y@4 M !D ("!"7 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %$@)5\[L6;IM @ +04 !D M ("!5'H 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ %$@)5["Q@._4 @ \ 4 !D ("!.H4 'AL+W=O M&PO=V]R:W-H965TRU 9)HP( *L% 9 " @:2+ M !X;"]W;W)K&UL4$L! A0#% @ %$@)5X6" MO#WO! 2@P !D ("!?HX 'AL+W=O&PO=V]R:W-H965T&=7)W$0, (L& 9 " @5Z6 !X;"]W;W)K&UL4$L! A0#% @ %$@)5XOM@4"$! > L !D M ("!IID 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ %$@)5TZ#E#R0 P :P@ !D ("! MG*0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ %$@)5U!FK\]&PO=V]R:W-H965T;?+MXF@( %H& 9 " @?2[ !X M;"]W;W)K&UL4$L! A0#% @ %$@)5\3!#DRE M @ Z < !D ("!Q;X 'AL+W=O&PO=V]R:W-H965T7FJV%/ , +4) 9 " @5W% !X;"]W;W)K&UL4$L! A0#% @ %$@)5]'GU<(W P C@D !D M ("!T,@ 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ %$@)5\(I6?8(!0 2B$ !D ("!U]$ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M%$@)5WH .!EW P %PX !D ("!A> 'AL+W=O&UL4$L! A0#% @ %$@)5_F31A86 P MQ@H !D ("!K^P 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %$@)5TIWOTZ1 P JPX !D M ("!?_8 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ %$@)5]+_)_UQ @ <08 !D ("!CP$! 'AL M+W=O&PO=V]R:W-H965TF>:D5K 0 /0@ 9 " M@6,' 0!X;"]W;W)K&UL4$L! A0#% @ %$@) M5V![0 1=! &!4 !D ("!1@P! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %$@)5\:D(OI9! 6Q8 M !D ("!_!4! 'AL+W=O&PO=V]R:W-H965TYX=R[ M?@( #T& 9 " @2X= 0!X;"]W;W)K&UL4$L! A0#% @ %$@)5Z+CXIQ, @ /P8 !D M ("!XQ\! 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ %$@)5Y'EZ*T) P *PL !D ("!V2D! 'AL+W=O M&PO7BKL